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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080212092722.32c30eac@hyperion.delvare>
Date:	Tue, 12 Feb 2008 09:27:22 +0100
From:	Jean Delvare <khali@...ux-fr.org>
To:	"Yinghai Lu" <yhlu.kernel@...il.com>,
	"Mark M. Hoffman" <mhoffman@...htlink.com>
Cc:	"Greg KH" <greg@...ah.com>,
	"Linux Kernel Mailing List" <linux-kernel@...r.kernel.org>,
	lm-sensors@...sensors.org
Subject: Re: [PATCH] hwmon: (adm1026) Properly terminate sysfs groups (Was:
 panic about sysfs with adm1026)

Hi Yinghai,

On Mon, 11 Feb 2008 15:39:39 -0800, Yinghai Lu wrote:
> On Feb 10, 2008 10:01 AM, Jean Delvare <khali@...ux-fr.org> wrote:
> > Yeah, I am an idiot. In 5b34dbcd88251508d02e48ad9b0f9b8232a13ee0 I
> > introduced two new sysfs file groups but forgot to NULL-terminate them.
> > Sorry about that, here's the fix:
> >
> > * * * * *
> >
> > The missing NULL at the end of two sysfs file groups causes a kernel
> > crash when calling sysfs_create_group().
> >
> > Signed-off-by: Jean Delvare <khali@...ux-fr.org>
> > ---
> >  drivers/hwmon/adm1026.c |    2 ++
> >  1 file changed, 2 insertions(+)
> >
> > --- linux-2.6.25-rc0.orig/drivers/hwmon/adm1026.c       2008-02-10 11:21:54.000000000 +0100
> > +++ linux-2.6.25-rc0/drivers/hwmon/adm1026.c    2008-02-10 18:51:00.000000000 +0100
> > @@ -1624,6 +1624,7 @@ static struct attribute *adm1026_attribu
> >         &dev_attr_temp3_crit_enable.attr,
> >         &dev_attr_temp3_auto_point1_pwm.attr,
> >         &dev_attr_temp3_auto_point2_pwm.attr,
> > +       NULL
> >  };
> >
> >  static const struct attribute_group adm1026_group_temp3 = {
> > @@ -1639,6 +1640,7 @@ static struct attribute *adm1026_attribu
> >         &sensor_dev_attr_in9_max.dev_attr.attr,
> >         &sensor_dev_attr_in9_min.dev_attr.attr,
> >         &sensor_dev_attr_in9_alarm.dev_attr.attr,
> > +       NULL
> >  };
> >
> >  static const struct attribute_group adm1026_group_in8_9 = {
> >
> > * * * * *
> 
> it works. Thanks

Great, thanks. Mark, please include this patch in your next patch to
Linus for 2.6.25.

> > Yinghai, the bug crept in because I do not have an ADM1026 chip to test
> > my changes. Could you please send a dump of your chip to me, so that I
> > can emulate it? This would avoid similar problems in the future.
> >
> > First you have to find out at which address the ADM1026 chip lives. The
> > first line of "sensors" should tell, otherwise you can run "i2cdetect
> > 1". The ADM1026 can live at 0x2c, 0x2d or 0x2e. Once you know the
> > address, run the following command to get the dump:
> >
> > rmmod adm1026
> > i2cdump 1 0x2d b
> 
> LBSuse:/x/kernel.org # ./i2cdetect 1
> WARNING! This program can confuse your I2C bus, cause data loss and worse!
> I will probe file /dev/i2c-1.
> I will probe address range 0x03-0x77.
> Continue? [Y/n] y
>      0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
> 00:          -- -- -- -- -- 08 -- -- -- -- -- -- --
> 10: -- -- -- -- -- -- -- -- 18 19 -- -- 1c 1d -- --
> 20: -- -- -- -- -- -- -- -- -- -- -- -- UU UU -- --
> 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> 40: 40 41 -- -- -- -- -- -- 48 49 4a -- -- -- -- --
> 50: UU UU UU UU UU UU -- -- -- -- -- -- -- -- -- --
> 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> 70: -- -- -- -- -- -- -- --
> LBSuse:/x/kernel.org # ./i2cdump 1 0x2c b
> Error: Could not set address to 0x2c: Device or resource busy
> LBSuse:/x/kernel.org # ./i2cdump 1 0x2d b
> Error: Could not set address to 0x2d: Device or resource busy

You must unload the adm1026 driver before dumping (see the "rmmod
adm1026" above in my example.)

Thanks,
-- 
Jean Delvare
--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ