On Sat, Jan 22, 2005 at 12:57:52PM -0800, kevin thayer wrote:
> did you test it on non-64 bit systems? we may need to
> put some #if statements in.. 

The current "u32 then" only interacts with jiffies which already is
(unconditionally) a u64. Is this a 64bits issue at all?

I wonder why the build gives no warnings when assigning a u64 value to
a u32.

> -tmk
> 
> wrote:
> 
> > With this patch, no more errors in syslog.
> > 
> > Jose Alberto
> > > diff -Naur ivtv-0.2.0-rc3d/driver/ivtv-dma.c
> > ivtv-0.2.0-rc3d.amd64/driver/ivtv-dma.c
> > 15:50:40.000000000 +0200
> > +++ ivtv-0.2.0-rc3d.amd64/driver/ivtv-dma.c
> > 2005-01-17 08:52:27.000000000 +0100
> > @@ -101,7 +101,7 @@
> >  {
> >          DECLARE_WAITQUEUE(wait, current);
> >          int rc = 0;
> > -        u32 then;
> > +        u64 then;
> >  
> >          then = jiffies;
> >          add_wait_queue(&itv->streams[type].waitq,
> > &wait);
> > diff -Naur ivtv-0.2.0-rc3d/driver/ivtv-fileops.c
> > ivtv-0.2.0-rc3d.amd64/driver/ivtv-fileops.c
> > 01:30:38.000000000 +0100
> > +++ ivtv-0.2.0-rc3d.amd64/driver/ivtv-fileops.c
> > 2005-01-17 08:51:56.000000000 +0100
> > @@ -270,7 +270,8 @@
> >     DECLARE_WAITQUEUE(wait, current);
> >     int idx = itv->vbi_inserted_frame % 20;
> >     int blocking = !(filp->f_flags & O_NONBLOCK);
> > -   u32 old_trans_id, then;
> > +   u32 old_trans_id;
> > +   u64 then;
> >          u32 bytes_received = 0;
> >          LIST_HEAD(full_list);
> >  
> > diff -Naur ivtv-0.2.0-rc3d/driver/ivtv-irq.c
> > ivtv-0.2.0-rc3d.amd64/driver/ivtv-irq.c
> > 06:29:21.000000000 +0100
> > +++ ivtv-0.2.0-rc3d.amd64/driver/ivtv-irq.c
> > 2005-01-22 17:15:37.000000000 +0100
> > @@ -414,7 +414,7 @@
> >          struct ivtv_buffer *buf;
> >          LIST_HEAD(free_list);
> >     int xfer_pad;
> > -   u32 then;
> > +   u64 then;
> >     int redo_dma = 0;
> >     DECLARE_WAITQUEUE(wait, current);
> >     int rc = 0;
> > diff -Naur ivtv-0.2.0-rc3d/driver/ivtv-kthreads.c
> > ivtv-0.2.0-rc3d.amd64/driver/ivtv-kthreads.c
> > 2005-01-06 15:21:53.000000000 +0100
> > +++ ivtv-0.2.0-rc3d.amd64/driver/ivtv-kthreads.c
> > 2005-01-17 08:48:42.000000000 +0100
> > @@ -373,7 +373,7 @@
> >          int type = IVTV_DEC_STREAM_TYPE_MPG;
> >          struct ivtv_stream *stream=
> > &itv->streams[type];
> >     int ret = -1;
> > -   unsigned long then = 0; 
> > +   u64 then = 0;   
> >     int rc = 0;
> >          int x=0, bytes_written=0;
> >          struct ivtv_buffer *buf;
> > diff -Naur ivtv-0.2.0-rc3d/driver/ivtv-osd.c
> > ivtv-0.2.0-rc3d.amd64/driver/ivtv-osd.c
> > 15:21:12.000000000 +0100
> > +++ ivtv-0.2.0-rc3d.amd64/driver/ivtv-osd.c
> > 2005-01-22 17:16:55.000000000 +0100
> > @@ -773,7 +773,7 @@
> >             &itv->streams[IVTV_DEC_STREAM_TYPE_MPG];
> >     u32 data[IVTV_MBOX_MAX_DATA];
> >     int ret = 0;
> > -   u32 then;
> > +   u64 then;
> >     int redo_dma = 0;
> >     unsigned long flags;
> >  
> > @@ -946,7 +946,7 @@
> >     int type;
> >     struct ivtv_stream *stream = /* Use Decoder Stream
> > for locking */
> >             &itv->streams[IVTV_DEC_STREAM_TYPE_MPG];
> > -   u32 then;
> > +   u64 then;
> >     DECLARE_WAITQUEUE(wait, current);
> >  
> >          /* YUV or MPG */
> > diff -Naur ivtv-0.2.0-rc3d/driver/ivtv-streams.c
> > ivtv-0.2.0-rc3d.amd64/driver/ivtv-streams.c
> > 01:32:36.000000000 +0100
> > +++ ivtv-0.2.0-rc3d.amd64/driver/ivtv-streams.c
> > 2005-01-22 17:18:30.000000000 +0100
> > @@ -993,7 +993,8 @@
> >  int ivtv_stop_capture(struct ivtv *itv, int type)
> >  {
> >     struct ivtv_stream *st = &itv->streams[type];
> > -   int cap_type, then;
> > +   int cap_type;
> > +   u64 then;
> >     int x;
> >     int stopmode;
> >     u32 data[IVTV_MBOX_MAX_DATA], result;
> > @@ -1169,7 +1170,7 @@
> >  static void ivtv_stop_wait(struct ivtv *itv, int
> > type) {
> >          DECLARE_WAITQUEUE(wait, current);
> >          int rc = 0;
> > -        u32 then;
> > +        u64 then;
> >  
> >          then = jiffies;
> >          add_wait_queue(&itv->streams[type].waitq,
> > &wait);
> > > diff -Naur ivtv-0.3.2b/driver/ivtv-dma.c
> > ivtv-0.3.2b.amd64/driver/ivtv-dma.c
> > 15:50:40.000000000 +0200
> > +++ ivtv-0.3.2b.amd64/driver/ivtv-dma.c     2005-01-20
> > 21:45:27.000000000 +0100
> > @@ -101,7 +101,7 @@
> >  {
> >          DECLARE_WAITQUEUE(wait, current);
> >          int rc = 0;
> > -        u32 then;
> > +        u64 then;
> >  
> >          then = jiffies;
> >          add_wait_queue(&itv->streams[type].waitq,
> > &wait);
> > diff -Naur ivtv-0.3.2b/driver/ivtv-fileops.c
> > ivtv-0.3.2b.amd64/driver/ivtv-fileops.c
> > 01:26:56.000000000 +0100
> > +++ ivtv-0.3.2b.amd64/driver/ivtv-fileops.c
> > 2005-01-22 16:56:07.000000000 +0100
> > @@ -276,7 +276,8 @@
> >     DECLARE_WAITQUEUE(wait, current);
> >     int idx = itv->vbi_inserted_frame % 20;
> >     int blocking = !(filp->f_flags & O_NONBLOCK);
> > -   u32 old_trans_id, then;
> > +   u32 old_trans_id;
> > +   u64 then;
> >          u32 bytes_received = 0;
> >          LIST_HEAD(full_list);
> >  
> > diff -Naur ivtv-0.3.2b/driver/ivtv-irq.c
> > ivtv-0.3.2b.amd64/driver/ivtv-irq.c
> > 07:46:22.000000000 +0100
> > +++ ivtv-0.3.2b.amd64/driver/ivtv-irq.c     2005-01-20
> > 21:44:54.000000000 +0100
> > @@ -406,7 +406,7 @@
> >          struct ivtv_buffer *buf;
> >          LIST_HEAD(free_list);
> >     int xfer_pad;
> > -   u32 then;
> > +   u64 then;
> >     int redo_dma = 0;
> >     DECLARE_WAITQUEUE(wait, current);
> >     int rc = 0;
> > diff -Naur ivtv-0.3.2b/driver/ivtv-kthreads.c
> > ivtv-0.3.2b.amd64/driver/ivtv-kthreads.c
> > 15:06:16.000000000 +0100
> > +++ ivtv-0.3.2b.amd64/driver/ivtv-kthreads.c
> > 2005-01-20 21:44:13.000000000 +0100
> > @@ -373,7 +373,7 @@
> >          int type = IVTV_DEC_STREAM_TYPE_MPG;
> >          struct ivtv_stream *stream=
> > &itv->streams[type];
> >     int ret = -1;
> > -   unsigned long then = 0; 
> > +   u64 then = 0;   
> >     int rc = 0;
> >          int x=0, bytes_written=0;
> >          struct ivtv_buffer *buf;
> > diff -Naur ivtv-0.3.2b/driver/ivtv-osd.c
> > ivtv-0.3.2b.amd64/driver/ivtv-osd.c
> > 15:06:16.000000000 +0100
> > +++ ivtv-0.3.2b.amd64/driver/ivtv-osd.c     2005-01-20
> > 21:43:09.000000000 +0100
> > @@ -773,7 +773,7 @@
> >             &itv->streams[IVTV_DEC_STREAM_TYPE_MPG];
> >     u32 data[IVTV_MBOX_MAX_DATA];
> >     int ret = 0;
> > -   u32 then;
> > +   u64 then;
> >     int redo_dma = 0;
> >     unsigned long flags;
> >  
> > @@ -948,7 +948,7 @@
> >          int cur_buf = 0;
> >          int offset = 0;
> >          int ret = 0;
> > -        u32 then;
> > +        u64 then;
> >          int redo_dma = 0;
> >          unsigned long flags;
> >          int i;
> > @@ -1209,7 +1209,7 @@
> >          int rc = 0;
> >          struct ivtv_stream *stream = /* Use Decoder
> > Stream for locking */
> >                 
> > &itv->streams[IVTV_DEC_STREAM_TYPE_OSD];
> > -        u32 then;
> > +        u64 then;
> >          DECLARE_WAITQUEUE(wait, current);
> >  
> >          /* If needing to re-setup the OSD */
> > @@ -1272,7 +1272,7 @@
> >          int rc = 0;
> >          struct ivtv_stream *stream = /* Use Decoder
> > Stream for locking */
> >                 
> > &itv->streams[IVTV_DEC_STREAM_TYPE_YUV];
> > -        u32 then;
> > +        u64 then;
> >          DECLARE_WAITQUEUE(wait, current);
> >  
> >          then = jiffies;
> > @@ -1325,7 +1325,7 @@
> >     int type;
> >     struct ivtv_stream *stream = /* Use Decoder Stream
> > for locking */
> >             &itv->streams[IVTV_DEC_STREAM_TYPE_MPG];
> > -   u32 then;
> > +   u64 then;
> >     DECLARE_WAITQUEUE(wait, current);
> >  
> >          /* YUV or MPG */
> > diff -Naur ivtv-0.3.2b/driver/ivtv-streams.c
> > ivtv-0.3.2b.amd64/driver/ivtv-streams.c
> > 20:14:49.000000000 +0100
> > +++ ivtv-0.3.2b.amd64/driver/ivtv-streams.c
> > 2005-01-20 21:42:01.000000000 +0100
> > @@ -1018,7 +1018,8 @@
> >  int ivtv_stop_capture(struct ivtv *itv, int type)
> >  {
> >     struct ivtv_stream *st = &itv->streams[type];
> > -   int cap_type, then;
> > +   int cap_type;
> > +   u64 then;
> >     int x;
> >     int stopmode;
> >     u32 data[IVTV_MBOX_MAX_DATA], result;
> > @@ -1194,7 +1195,7 @@
> >  static void ivtv_stop_wait(struct ivtv *itv, int
> > type) {
> >          DECLARE_WAITQUEUE(wait, current);
> >          int rc = 0;
> > -        u32 then;
> > +        u64 then;
> >  
> >          then = jiffies;
> >          add_wait_queue(&itv->streams[type].waitq,
> > &wait);
> > 
> 
> 
> 
> This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
> Tool for open source databases. Create drag-&-drop reports. Save time
> by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
> Download a FREE copy at http://www.intelliview.com/go/osdn_nl
> _______________________________________________
> ivtv-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ivtv-devel

-- 
Axel.Thimm at ATrpms.net

Attachment: pgpVnm31IfdLQ.pgp
Description: PGP signature

Reply via email to