2002-11-01 05:17:54

by Miles Bader

[permalink] [raw]
Subject: 2.5.45: drivers/mtd/mtdblock.c won't compile -- misordered declaration

When I compile 2.5.45, I get the following errors:

v850e-elf-gcc -Wp,-MD,drivers/mtd/.mtdblock.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -g -fomit-frame-pointer -fno-strict-aliasing -fno-common -mv850e -ffixed-r16 -mno-prolog-function -fno-builtin -D__linux__ -DUTS_SYSNAME=\"uClinux\" -nostdinc -iwithprefix include -DKBUILD_BASENAME=mtdblock -c -o drivers/mtd/mtdblock.o drivers/mtd/mtdblock.c
drivers/mtd/mtdblock.c:398: parse error before `struct'
drivers/mtd/mtdblock.c:399: `p' undeclared (first use in this function)

I fixed this locally as follows:


diff -ruN -X../cludes ../orig/linux-2.5.45-uc1/drivers/mtd/mtdblock.c drivers/mtd/mtdblock.c
--- ../orig/linux-2.5.45-uc1/drivers/mtd/mtdblock.c 2002-10-31 11:41:04.000000000 +0900
+++ drivers/mtd/mtdblock.c 2002-11-01 12:43:26.000000000 +0900
@@ -393,9 +393,10 @@
unsigned int res;

while (!blk_queue_empty(&mtd_queue)) {
+ struct mtdblk_dev **p;
struct request *req = elv_next_request(&mtd_queue);
spin_unlock_irq(mtd_queue.queue_lock);
- struct mtdblk_dev **p = req->rq_disk->private_data;
+ p = req->rq_disk->private_data;
mtdblk = *p;
res = 0;



Thanks,

-Miles
--
Quidquid latine dictum sit, altum viditur.


2002-11-05 04:38:59

by Miles Bader

[permalink] [raw]
Subject: 2.5.46: drivers/mtd/mtdblock.c won't compile -- misordered declaration

[This is a repost of my earlier message, since the problem doesn't seem
to have been fixed in 2.5.46; could someone please look at this?
I don't think it should be controversial...]

When I compile 2.5.45, I get the following errors:

v850e-elf-gcc -Wp,-MD,drivers/mtd/.mtdblock.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -g -fomit-frame-pointer -fno-strict-aliasing -fno-common -mv850e -ffixed-r16 -mno-prolog-function -fno-builtin -D__linux__ -DUTS_SYSNAME=\"uClinux\" -nostdinc -iwithprefix include -DKBUILD_BASENAME=mtdblock -c -o drivers/mtd/mtdblock.o drivers/mtd/mtdblock.c
drivers/mtd/mtdblock.c:398: parse error before `struct'
drivers/mtd/mtdblock.c:399: `p' undeclared (first use in this function)

I fixed this locally as follows:

diff -ruN -X../cludes ../orig/linux-2.5.45-uc1/drivers/mtd/mtdblock.c drivers/mtd/mtdblock.c
--- ../orig/linux-2.5.45-uc1/drivers/mtd/mtdblock.c 2002-10-31 11:41:04.000000000 +0900
+++ drivers/mtd/mtdblock.c 2002-11-01 12:43:26.000000000 +0900
@@ -393,9 +393,10 @@
unsigned int res;

while (!blk_queue_empty(&mtd_queue)) {
+ struct mtdblk_dev **p;
struct request *req = elv_next_request(&mtd_queue);
spin_unlock_irq(mtd_queue.queue_lock);
- struct mtdblk_dev **p = req->rq_disk->private_data;
+ p = req->rq_disk->private_data;
mtdblk = *p;
res = 0;

Thanks,

-Miles
--
o The existentialist, not having a pillow, goes everywhere with the book by
Sullivan, _I am going to spit on your graves_.

2002-11-05 09:11:44

by Russell King

[permalink] [raw]
Subject: Re: 2.5.46: drivers/mtd/mtdblock.c won't compile -- misordered declaration

On Tue, Nov 05, 2002 at 01:45:22PM +0900, Miles Bader wrote:
> [This is a repost of my earlier message, since the problem doesn't seem
> to have been fixed in 2.5.46; could someone please look at this?
> I don't think it should be controversial...]
>
> When I compile 2.5.45, I get the following errors:

It'll be fixed in 2.5.47 - Linus has already incorporated the following.
I just missed 2.5.46 by a few hours (because I normally send my requests
to Linus at around 11pm - Midnight GMT.)

# --------------------------------------------
# 02/11/04 [email protected] 1.896
# [MTD] Fix mtdblock.c build error
# Move spin_unlock_irq() down one line.
# --------------------------------------------
diff -Nru a/drivers/mtd/mtdblock.c b/drivers/mtd/mtdblock.c
--- a/drivers/mtd/mtdblock.c Mon Nov 4 22:56:17 2002
+++ b/drivers/mtd/mtdblock.c Mon Nov 4 22:56:17 2002
@@ -394,8 +394,8 @@

while (!blk_queue_empty(&mtd_queue)) {
struct request *req = elv_next_request(&mtd_queue);
- spin_unlock_irq(mtd_queue.queue_lock);
struct mtdblk_dev **p = req->rq_disk->private_data;
+ spin_unlock_irq(mtd_queue.queue_lock);
mtdblk = *p;
res = 0;



--
Russell King ([email protected]) The developer of ARM Linux
http://www.arm.linux.org.uk/personal/aboutme.html