w1: fix for loop in w1_f29_remove_slave()
The for loop was looking for i <= 0 instead of i >= 0 so this function never did anything. Also we started with i = NB_SYSFS_BIN_FILES instead of "NB_SYSFS_BIN_FILES - 1" which is an off by one bug. Reported-by: Bojan Prtvar <prtvar.b@gmail.com> Signed-off-by: Dan Carpenter <error27@gmail.com> Acked-by: Jean-Franois Dagenais <dagenaisj@sonatest.com> Cc: Evgeniy Polyakov <zbr@ioremap.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
2df7a7d1cd
commit
5829944925
@@ -373,7 +373,7 @@ static int w1_f29_add_slave(struct w1_slave *sl)
|
|||||||
static void w1_f29_remove_slave(struct w1_slave *sl)
|
static void w1_f29_remove_slave(struct w1_slave *sl)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
for (i = NB_SYSFS_BIN_FILES; i <= 0; --i)
|
for (i = NB_SYSFS_BIN_FILES - 1; i >= 0; --i)
|
||||||
sysfs_remove_bin_file(&sl->dev.kobj,
|
sysfs_remove_bin_file(&sl->dev.kobj,
|
||||||
&(w1_f29_sysfs_bin_files[i]));
|
&(w1_f29_sysfs_bin_files[i]));
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user