Re: NPTL support
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 I don't use neither buildroot nor uClibc-nptl, due to uClibc-nptl is a (dev-)branch and not a release. It differs quite a lot from the 0.9.29 release. //Markus veerasena reddy wrote: > Hi Markus, > > thanks for the information. > > i checked out uclibc-nptl (version 0.9.29). is it a stable release? > If i want to build toolchain using buildroot with nptl support for > linux kernel 2.6.18.8, could you please guide us the right version > of buildroot, binutils, and gcc to be used. > > Thanks & Regards, Veerasena. > > - Original Message From: Markus Gothe > <[EMAIL PROTECTED]> To: veerasena reddy > <[EMAIL PROTECTED]> Cc: [EMAIL PROTECTED]; linux-mips > <[EMAIL PROTECTED]>; linux-kernel.org > ; [EMAIL PROTECTED] Sent: Friday, > 2 November, 2007 6:01:41 PM Subject: Re: NPTL support > > You'll have to use the uClibc-nptl branch on their svn. In 0.9.28, > no. > > //Markus > > On 2 Nov 2007, at 06:03, veerasena reddy wrote: > >> Hi, >> >> I am trying to build the toolchain for MIPS processor using >> buildroot. I am using gcc version of 3.4.3, binutils-2.15, >> uclibc-0.9.28 and linux-2.6.18.8 kernel. >> >> Basically i need to enable NPTL feature support in my toolchain. >> does uclibc-0.9.28 has the support for NPTL? If not, how can i >> get it enabled for my above build configuration? >> >> I see there is separate branch "uclibc-nptl" in uclibc. Do i need >> to use this (uclibc-nptl) to meet my requirement? >> >> Could you please suggest me right approach to succssfully enable >> NPTL? >> >> Thanks in advance. >> >> Regards, Veerasena. >> >> >> Why delete messages? Unlimited storage is just a click away. Go >> to http://help.yahoo.com/l/in/yahoo/mail/yahoomail/tools/ >> tools-08.html >> >> > > ___ > > Mr Markus Gothe Software Engineer > > Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 > Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, > Sweden www.27m.com > > > Did you know? You can CHAT without downloading messenger. Go to > http://in.messenger.yahoo.com/webmessengerpromo.php/ > > - -- ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHLwuS6I0XmJx2NrwRCLRDAJ9O5mtOAtncebZ9yTZoZpWQLD7hKwCghfdz IlaSKs6XX+dD6dqC5YFYbRY= =/Kz+ -END PGP SIGNATURE- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: NPTL support
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 I don't use neither buildroot nor uClibc-nptl, due to uClibc-nptl is a (dev-)branch and not a release. It differs quite a lot from the 0.9.29 release. //Markus veerasena reddy wrote: Hi Markus, thanks for the information. i checked out uclibc-nptl (version 0.9.29). is it a stable release? If i want to build toolchain using buildroot with nptl support for linux kernel 2.6.18.8, could you please guide us the right version of buildroot, binutils, and gcc to be used. Thanks Regards, Veerasena. - Original Message From: Markus Gothe [EMAIL PROTECTED] To: veerasena reddy [EMAIL PROTECTED] Cc: [EMAIL PROTECTED]; linux-mips [EMAIL PROTECTED]; linux-kernel.org linux-kernel@vger.kernel.org; [EMAIL PROTECTED] Sent: Friday, 2 November, 2007 6:01:41 PM Subject: Re: NPTL support You'll have to use the uClibc-nptl branch on their svn. In 0.9.28, no. //Markus On 2 Nov 2007, at 06:03, veerasena reddy wrote: Hi, I am trying to build the toolchain for MIPS processor using buildroot. I am using gcc version of 3.4.3, binutils-2.15, uclibc-0.9.28 and linux-2.6.18.8 kernel. Basically i need to enable NPTL feature support in my toolchain. does uclibc-0.9.28 has the support for NPTL? If not, how can i get it enabled for my above build configuration? I see there is separate branch uclibc-nptl in uclibc. Do i need to use this (uclibc-nptl) to meet my requirement? Could you please suggest me right approach to succssfully enable NPTL? Thanks in advance. Regards, Veerasena. Why delete messages? Unlimited storage is just a click away. Go to http://help.yahoo.com/l/in/yahoo/mail/yahoomail/tools/ tools-08.html ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com Did you know? You can CHAT without downloading messenger. Go to http://in.messenger.yahoo.com/webmessengerpromo.php/ - -- ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHLwuS6I0XmJx2NrwRCLRDAJ9O5mtOAtncebZ9yTZoZpWQLD7hKwCghfdz IlaSKs6XX+dD6dqC5YFYbRY= =/Kz+ -END PGP SIGNATURE- - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: NPTL support
You'll have to use the uClibc-nptl branch on their svn. In 0.9.28, no. //Markus On 2 Nov 2007, at 06:03, veerasena reddy wrote: Hi, I am trying to build the toolchain for MIPS processor using buildroot. I am using gcc version of 3.4.3, binutils-2.15, uclibc-0.9.28 and linux-2.6.18.8 kernel. Basically i need to enable NPTL feature support in my toolchain. does uclibc-0.9.28 has the support for NPTL? If not, how can i get it enabled for my above build configuration? I see there is separate branch "uclibc-nptl" in uclibc. Do i need to use this (uclibc-nptl) to meet my requirement? Could you please suggest me right approach to succssfully enable NPTL? Thanks in advance. Regards, Veerasena. Why delete messages? Unlimited storage is just a click away. Go to http://help.yahoo.com/l/in/yahoo/mail/yahoomail/tools/ tools-08.html ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com PGP.sig Description: This is a digitally signed message part
Re: NPTL support
You'll have to use the uClibc-nptl branch on their svn. In 0.9.28, no. //Markus On 2 Nov 2007, at 06:03, veerasena reddy wrote: Hi, I am trying to build the toolchain for MIPS processor using buildroot. I am using gcc version of 3.4.3, binutils-2.15, uclibc-0.9.28 and linux-2.6.18.8 kernel. Basically i need to enable NPTL feature support in my toolchain. does uclibc-0.9.28 has the support for NPTL? If not, how can i get it enabled for my above build configuration? I see there is separate branch uclibc-nptl in uclibc. Do i need to use this (uclibc-nptl) to meet my requirement? Could you please suggest me right approach to succssfully enable NPTL? Thanks in advance. Regards, Veerasena. Why delete messages? Unlimited storage is just a click away. Go to http://help.yahoo.com/l/in/yahoo/mail/yahoomail/tools/ tools-08.html ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com PGP.sig Description: This is a digitally signed message part
Re: [PATCH] drivers/video/pmag-ba-fb.c: Improve diagnostics
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 GCC 4.1.2 has been stable for a long time now, maybe you better upgrade your binutils instead... //Markus Satyam Sharma wrote: > Hi Maciej, > > > On Thu, 20 Sep 2007, Maciej W. Rozycki wrote: >> On Wed, 19 Sep 2007, Andrew Morton wrote: >> >>>> patch-mips-2.6.23-rc5-20070904-pmag-ba-err-2 diff -up >>>> --recursive --new-file >>>> linux-mips-2.6.23-rc5-20070904.macro/drivers/video/pmag-ba-fb.c >>>> linux-mips-2.6.23-rc5-20070904/drivers/video/pmag-ba-fb.c --- >>>> linux-mips-2.6.23-rc5-20070904.macro/drivers/video/pmag-ba-fb.c >>>> 2007-02-21 05:56:47.0 + +++ >>>> linux-mips-2.6.23-rc5-20070904/drivers/video/pmag-ba-fb.c >>>> 2007-09-18 10:56:51.0 + @@ -147,16 +147,23 @@ >>>> static int __init pmagbafb_probe(struct resource_size_t >>>> start, len; struct fb_info *info; struct pmagbafb_par *par; + >>>> int err = 0; >>> This initialisation to zero is not good. >>> >>> Because if some error-path code forgot to do `err = -EFOO' then >>> probe() will return zero and the driver will leave things in >>> half-initialised state and will then proceed as if things had >>> succeeded. It will crash. >> GCC used to complain: "`foo' might be used uninitialized..." and >> this is the usual cure; let me see if this not the case anymore >> (I have 4.1.2). > > Even so, initializing to zero isn't quite good. You could use the > uninitialized_var() (once you've confirmed that the warning is > bogus). However, some maintainers may still nack > uninitialized_var() usage, quite legitimately. > > >>> So it's better to leave this local uninitialised, because we >>> really want to get that compiler warning if someone forgot to >>> set the return value. >> Yes of course, barring the issue mentioned. Note the message >> above is not the same as: "`foo' is used uninitialized..." that >> would be reported in the case which you are concerned of. > > Firstly, "may be used uninitialized" can still be a bug. > > Secondly, latest gcc is *horribly* buggy (and has been so for last > several releases including 4.1, 4.2 and 4.3 -- 3.x was good). See: > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33327 > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18501 > > We'd been hurling all sorts of abuses on gcc for quite long (when > it fails to detect these "false positive" cases), but now, it turns > out it is quite easy to write *genuinely* buggy code that still > won't get any warnings, neither the "is used" nor "may be used" > one! > > In short, there are three ways to fix these false positive > warnings: > > 1. Do nothing, there are enough "uninitialized variable" warnings > anyway, and hopefully, one day GCC would clean up its act. > > 2. Use uninitialized_var() to shut it up (only if it's genuinely > bogus). > > 3. Do something like the following legendary patch [1]: > > http://kegel.com/crosstool/crosstool-0.43/patches/linux-2.6.11.3/arch_alpha_kernel_srcons.patch > > > i.e., explicitly change the structure/logic of the function to make > it obvious enough to gcc that the variable will not be used > uninitialized. > > > Satyam > > [1] That was a funny case -- the alpha linux maintainer is also a > gcc maintainer. Alpha even sets -Werror, so either he had to fix > the kernel code that produced the warning, or go fix GCC to not > warn about it -- he chose the former :-) > - -- ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFG8nuh6I0XmJx2NrwRCIX3AJ9c1HwLMWXV6SFb/WmJ2zFR0xbJxgCeLrIb g7N9BsOQhRre5iDf6hFcXF0= =VXuc -END PGP SIGNATURE- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] drivers/video/pmag-ba-fb.c: Improve diagnostics
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 GCC 4.1.2 has been stable for a long time now, maybe you better upgrade your binutils instead... //Markus Satyam Sharma wrote: Hi Maciej, On Thu, 20 Sep 2007, Maciej W. Rozycki wrote: On Wed, 19 Sep 2007, Andrew Morton wrote: patch-mips-2.6.23-rc5-20070904-pmag-ba-err-2 diff -up --recursive --new-file linux-mips-2.6.23-rc5-20070904.macro/drivers/video/pmag-ba-fb.c linux-mips-2.6.23-rc5-20070904/drivers/video/pmag-ba-fb.c --- linux-mips-2.6.23-rc5-20070904.macro/drivers/video/pmag-ba-fb.c 2007-02-21 05:56:47.0 + +++ linux-mips-2.6.23-rc5-20070904/drivers/video/pmag-ba-fb.c 2007-09-18 10:56:51.0 + @@ -147,16 +147,23 @@ static int __init pmagbafb_probe(struct resource_size_t start, len; struct fb_info *info; struct pmagbafb_par *par; + int err = 0; This initialisation to zero is not good. Because if some error-path code forgot to do `err = -EFOO' then probe() will return zero and the driver will leave things in half-initialised state and will then proceed as if things had succeeded. It will crash. GCC used to complain: `foo' might be used uninitialized... and this is the usual cure; let me see if this not the case anymore (I have 4.1.2). Even so, initializing to zero isn't quite good. You could use the uninitialized_var() (once you've confirmed that the warning is bogus). However, some maintainers may still nack uninitialized_var() usage, quite legitimately. So it's better to leave this local uninitialised, because we really want to get that compiler warning if someone forgot to set the return value. Yes of course, barring the issue mentioned. Note the message above is not the same as: `foo' is used uninitialized... that would be reported in the case which you are concerned of. Firstly, may be used uninitialized can still be a bug. Secondly, latest gcc is *horribly* buggy (and has been so for last several releases including 4.1, 4.2 and 4.3 -- 3.x was good). See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33327 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18501 We'd been hurling all sorts of abuses on gcc for quite long (when it fails to detect these false positive cases), but now, it turns out it is quite easy to write *genuinely* buggy code that still won't get any warnings, neither the is used nor may be used one! In short, there are three ways to fix these false positive warnings: 1. Do nothing, there are enough uninitialized variable warnings anyway, and hopefully, one day GCC would clean up its act. 2. Use uninitialized_var() to shut it up (only if it's genuinely bogus). 3. Do something like the following legendary patch [1]: http://kegel.com/crosstool/crosstool-0.43/patches/linux-2.6.11.3/arch_alpha_kernel_srcons.patch i.e., explicitly change the structure/logic of the function to make it obvious enough to gcc that the variable will not be used uninitialized. Satyam [1] That was a funny case -- the alpha linux maintainer is also a gcc maintainer. Alpha even sets -Werror, so either he had to fix the kernel code that produced the warning, or go fix GCC to not warn about it -- he chose the former :-) - -- ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFG8nuh6I0XmJx2NrwRCIX3AJ9c1HwLMWXV6SFb/WmJ2zFR0xbJxgCeLrIb g7N9BsOQhRre5iDf6hFcXF0= =VXuc -END PGP SIGNATURE- - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 10/68] 0 -> NULL, for arch/mips
Usually it's not only cleaner, it's what you want to do... AFAIK 'NULL' is implemented/defined by the compiler, so if you've got a compiler which defines NULL otherwise than( a pointer to) zero you're screwed. ;) //Markus On 27 Jul, 2007, at 11:45 , Yoann Padioleau wrote: When comparing a pointer, it's clearer to compare it to NULL than to 0. Here is an excerpt of the semantic patch: @@ expression *E; @@ E == - 0 + NULL @@ expression *E; @@ E != - 0 + NULL Signed-off-by: Yoann Padioleau <[EMAIL PROTECTED]> Cc: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] --- ops-emma2rh.c |2 +- ops-pnx8550.c | 12 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/mips/pci/ops-emma2rh.c b/arch/mips/pci/ops-emma2rh.c index 38f1816..d31bfc6 100644 --- a/arch/mips/pci/ops-emma2rh.c +++ b/arch/mips/pci/ops-emma2rh.c @@ -45,7 +45,7 @@ static int check_args(struct pci_bus *bu /* check if the bus is top-level */ if (bus->parent != NULL) { *bus_num = bus->number; - db_assert(bus_num != 0); + db_assert(bus_num != NULL); } else *bus_num = 0; diff --git a/arch/mips/pci/ops-pnx8550.c b/arch/mips/pci/ops-pnx8550.c index f556b7a..d610646 100644 --- a/arch/mips/pci/ops-pnx8550.c +++ b/arch/mips/pci/ops-pnx8550.c @@ -117,7 +117,7 @@ read_config_byte(struct pci_bus *bus, un unsigned int data = 0; int err; - if (bus == 0) + if (bus == NULL) return -1; err = config_access(PCI_CMD_CONFIG_READ, bus, devfn, where, ~(1 << (where & 3)), ); @@ -145,7 +145,7 @@ read_config_word(struct pci_bus *bus, un unsigned int data = 0; int err; - if (bus == 0) + if (bus == NULL) return -1; if (where & 0x01) @@ -168,7 +168,7 @@ static int read_config_dword(struct pci_bus *bus, unsigned int devfn, int where, u32 * val) { int err; - if (bus == 0) + if (bus == NULL) return -1; if (where & 0x03) @@ -185,7 +185,7 @@ write_config_byte(struct pci_bus *bus, u unsigned int data = (unsigned int)val; int err; - if (bus == 0) + if (bus == NULL) return -1; switch (where & 0x03) { @@ -213,7 +213,7 @@ write_config_word(struct pci_bus *bus, u unsigned int data = (unsigned int)val; int err; - if (bus == 0) + if (bus == NULL) return -1; if (where & 0x01) @@ -235,7 +235,7 @@ static int write_config_dword(struct pci_bus *bus, unsigned int devfn, int where, u32 val) { int err; - if (bus == 0) + if (bus == NULL) return -1; if (where & 0x03) _______ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com PGP.sig Description: This is a digitally signed message part
Re: [PATCH 10/68] 0 - NULL, for arch/mips
Usually it's not only cleaner, it's what you want to do... AFAIK 'NULL' is implemented/defined by the compiler, so if you've got a compiler which defines NULL otherwise than( a pointer to) zero you're screwed. ;) //Markus On 27 Jul, 2007, at 11:45 , Yoann Padioleau wrote: When comparing a pointer, it's clearer to compare it to NULL than to 0. Here is an excerpt of the semantic patch: @@ expression *E; @@ E == - 0 + NULL @@ expression *E; @@ E != - 0 + NULL Signed-off-by: Yoann Padioleau [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] --- ops-emma2rh.c |2 +- ops-pnx8550.c | 12 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/mips/pci/ops-emma2rh.c b/arch/mips/pci/ops-emma2rh.c index 38f1816..d31bfc6 100644 --- a/arch/mips/pci/ops-emma2rh.c +++ b/arch/mips/pci/ops-emma2rh.c @@ -45,7 +45,7 @@ static int check_args(struct pci_bus *bu /* check if the bus is top-level */ if (bus-parent != NULL) { *bus_num = bus-number; - db_assert(bus_num != 0); + db_assert(bus_num != NULL); } else *bus_num = 0; diff --git a/arch/mips/pci/ops-pnx8550.c b/arch/mips/pci/ops-pnx8550.c index f556b7a..d610646 100644 --- a/arch/mips/pci/ops-pnx8550.c +++ b/arch/mips/pci/ops-pnx8550.c @@ -117,7 +117,7 @@ read_config_byte(struct pci_bus *bus, un unsigned int data = 0; int err; - if (bus == 0) + if (bus == NULL) return -1; err = config_access(PCI_CMD_CONFIG_READ, bus, devfn, where, ~(1 (where 3)), data); @@ -145,7 +145,7 @@ read_config_word(struct pci_bus *bus, un unsigned int data = 0; int err; - if (bus == 0) + if (bus == NULL) return -1; if (where 0x01) @@ -168,7 +168,7 @@ static int read_config_dword(struct pci_bus *bus, unsigned int devfn, int where, u32 * val) { int err; - if (bus == 0) + if (bus == NULL) return -1; if (where 0x03) @@ -185,7 +185,7 @@ write_config_byte(struct pci_bus *bus, u unsigned int data = (unsigned int)val; int err; - if (bus == 0) + if (bus == NULL) return -1; switch (where 0x03) { @@ -213,7 +213,7 @@ write_config_word(struct pci_bus *bus, u unsigned int data = (unsigned int)val; int err; - if (bus == 0) + if (bus == NULL) return -1; if (where 0x01) @@ -235,7 +235,7 @@ static int write_config_dword(struct pci_bus *bus, unsigned int devfn, int where, u32 val) { int err; - if (bus == 0) + if (bus == NULL) return -1; if (where 0x03) ___ Mr Markus Gothe Software Engineer Phone: +46 (0)13 21 81 20 (ext. 1046) Fax: +46 (0)13 21 21 15 Mobile: +46 (0)73 718 72 80 Diskettgatan 11, SE-583 35 Linköping, Sweden www.27m.com PGP.sig Description: This is a digitally signed message part