Thread (1 message) 1 message, 1 author, 2017-01-24

Re: [PATCH net-next] uapi: fix signess in ethtool_validate_speed()

From: "Michael S. Tsirkin" <mst@redhat.com>
Date: 2017-01-24 14:52:01

On Tue, Jan 24, 2017 at 03:45:25PM +0100, Volodymyr Bendiuga wrote:
On Fri, Jan 20, 2017 at 5:36 PM, Michael S. Tsirkin [off-list ref] wrote:

    On Fri, Jan 20, 2017 at 02:20:53PM +0100, Volodymyr Bendiuga wrote:
    > From: Jonas Johansson [off-list ref]
    >
    > There is a comparison of speed  variable which
    > is unsigned, and SPEED_UNKNOWN which is signed.

    So?
   
    >
    > Signed-off-by: Jonas Johansson [off-list ref]
    > Signed-off-by: Volodymyr Bendiuga [off-list ref]
    > ---
    >  include/uapi/linux/ethtool.h | 2 +-
    >  1 file changed, 1 insertion(+), 1 deletion(-)
    >
    > diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h
    > index f0db778..1ca4a77 100644
    > --- a/include/uapi/linux/ethtool.h
    > +++ b/include/uapi/linux/ethtool.h
    > @@ -1500,7 +1500,7 @@ enum ethtool_link_mode_bit_indices {
    >
    >  #define SPEED_UNKNOWN                -1
    >
    > -static inline int ethtool_validate_speed(__u32 speed)
    > +static inline int ethtool_validate_speed(__s32 speed)
    >  {
    >       return speed <= INT_MAX || speed == SPEED_UNKNOWN;
    >  }

    Then comparison to INT_MAX does not make sense.

Why doesn't it make sense?
A signed integer is always <= INT_MAX.


-- 
MST
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help