Re: [PATCH] Don't export scsi kernel variables in userspace headers.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/27/2009 11:26 AM, Sam Ravnborg wrote:
> On Mon, Jul 27, 2009 at 03:44:18AM -0400, Christoph Hellwig wrote:
>> On Fri, Jul 24, 2009 at 10:10:26PM -0400, Dave Jones wrote:
>>> Found with make headers_check
>>>
>>> /usr/include/scsi/scsi.h:159: userspace cannot call function or variable defined in the kernel
>>> /usr/include/scsi/scsi.h:285: userspace cannot call function or variable defined in the kernel
>> The headers shouldn't be exported at all because scsi/ headers are
>> exported from glibc.
> Where does glibc get these headers from?
> 
> If glibc have their own private copy then the headers should indeed be exported
> so we avoid such mess.
> 
> 	Sam

We never had a Kbuild file in include/scsi. It was only added recently by the fcoe patchset.
scsi.h is not the only problem. All of /usr/include/scsi/* come from glibc private snapshot.

I agree with Sam that this is a complete mess, and that Kernel should take control back.
But someone should do it in an orderly manner. Clean up all the headers to be safe for
user mode and send notifications/patches to glibc, and the distributions must know that
they might be geting same files from two packages for a while.

Would we want a Kconfig option for a while, like SCSI_EXPORT_HEADERS so it can be turned
off?

Boaz
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux