lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 05 Jun 2009 10:28:00 -0700 From: Roland Dreier <rdreier@...co.com> To: lkml@...eThan.org Cc: linux-kernel@...r.kernel.org Subject: Re: [Compile Warning] 2.6.30-rc8 build > I can't argue with gcc on this one either: > > drivers/scsi/sd.c: In function 'sd_read_capacity': > drivers/scsi/sd.c:1451: warning: comparison is always false due to limited range of data type > > It reads to my eyes as if the function can never > select read_capacity_16 for very large devices. The code is: if ((sizeof(sdkp->capacity) > 4) && (sdkp->capacity > 0xffffffffULL)) { sdkp->capacity is a sector_t, and <linux/types.h> has: #ifdef CONFIG_LBD typedef u64 sector_t; typedef u64 blkcnt_t; #else typedef unsigned long sector_t; typedef unsigned long blkcnt_t; #endif so if you don't set CONFIG_LBD on a 32-bit architecture, then you are correct that sd.c won't ever hit the READ_CAPACITY(16) case, and the kernel won't be able to handle large SCSI disks. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists