All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jari Ruusu <jari.ruusu@pp.inet.fi>
To: Herbert Valerio Riedel <hvr@hvrlab.org>
Cc: Andrea Arcangeli <andrea@suse.de>,
	Marcelo Tosatti <marcelo@conectiva.com.br>,
	linux-kernel@vger.kernel.org, linux-crypto@nl.linux.org
Subject: Re: 2.4.19pre3aa2
Date: Sat, 16 Mar 2002 14:12:20 +0200	[thread overview]
Message-ID: <3C9336A4.7757FD1E@pp.inet.fi> (raw)
In-Reply-To: <20020314032801.C1273@dualathlon.random>  <3C912ACF.AF3EE6F0@pp.inet.fi> <1016194785.5713.200.camel@janus.txd.hvrlab.org>  <3C923120.B3AF105E@pp.inet.fi> <1016217396.5595.279.camel@janus.txd.hvrlab.org>

Herbert Valerio Riedel wrote:
> On Fri, 2002-03-15 at 18:36, Jari Ruusu wrote:
> > Not changing IV parameter type in 2.4 kernels is important. Break that in
> > 2.5/2.6 kernels, but not in stable 2.4, ok?
> 
> if you look closely at the typedef above, you'll notice that it doesn't
> introduce a _new_ type, but only a synonym for the 'int' type, which
> happens to be the type used in 2.4 kernels...

A synonym that does not exist on older kernels.

> typedef int (* transfer_proc_t)(struct loop_device *, int cmd,
>                                 char *raw_buf, char *loop_buf, int size,
>                                 int real_block);
                                  ^^^
That function prototype _must_ _not_ change in 2.4 kernels. That 'int'
better be there on newer 2.4 kernels.

> > Older 2.4 kernels dont't have
> > loop_iv_t, and being able to compile _existing_ modules for them is
> > important.
> as older kernels will likely have the variable-IV-metric, they'll have
> to be patched anyway (loop.[ch]), and after having patched them, the
> problem vanishes...

If you haven't noticed, loop-AES compiles and works fine on older kernels
without changing anything in kernel sources.

> > So the choice here is either break (or at least cause need to modify) all
> > other implementations or cryptoapi implementation.
> actually it's just -- either make my life harder w/ cryptoapi or not, as
> it doesn't affect other implementations;

Transfer function prototype change does affect other implementations. I
would have to add workaround to compile loop-AES on older kernels. If
cryptoapi got one parameter wrong, I don't see why other implementations
should bend over because of that.

Herbert, if you need some special types and/or macros in cryptoapi, just
define them in cryptoapi include files. Please don't mess with code that
other implementations depend on.

> > Herbert, if this loop_iv_t type goes into mainline kernel, I will have to
> > reverse that on loop-AES patches for backward compatibility.
> I don't see why... loop_iv_t is just a 'reviced-declarator-type-list
> int', i.e. it is is type compatible w/ an 'int'... so you won't even
> notice the difference when compiling loop-AES against it...

What I do notice is having to add workaround. See, loop-AES only creates
patched-loop.c (but not patched-loop.h), and under some circumstances
patched-loop.c may come from newer code than loop.h. So it needs a
workaround if transfer function prototype is changed.

> > Dependency on above mentioned #define's/typedef on kernel include files is
> > silly, as cryptoapi can define them on any of its own include files.
> yeah, sure... at the expense of having to redundantly keep track (ugly
> #ifdef's) of which kernel version is being used...

If IV parameter type is changed from 32 bits to 64 bits, you will need new
code and #ifdef's to handle that anyway. And that is 2.5/2.6 thing anyway.

Regards,
Jari Ruusu <jari.ruusu@pp.inet.fi>

      reply	other threads:[~2002-03-16 12:13 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-14  2:28 2.4.19pre3aa2 Andrea Arcangeli
2002-03-14 12:32 ` 2.4.19pre3aa2 Dave Jones
2002-03-14 12:37   ` 2.4.19pre3aa2 Andrea Arcangeli
2002-03-14 12:46   ` 2.4.19pre3aa2 Jeff Garzik
2002-03-14 12:59     ` 2.4.19pre3aa2 Dave Jones
2002-03-14 15:53   ` 2.4.19pre3aa2 Bill Davidsen
2002-03-14 16:12     ` 2.4.19pre3aa2 Andrea Arcangeli
2002-03-14 16:16       ` 2.4.19pre3aa2 Dave Jones
2002-03-14 16:32         ` 2.4.19pre3aa2 Andrea Arcangeli
2002-03-16  1:26       ` 2.4.19pre3aa2 Mike Fedyk
2002-03-14 16:13     ` 2.4.19pre3aa2 Dave Jones
2002-03-14 17:16       ` 2.4.19pre3aa2 Bill Davidsen
2002-03-14 21:16   ` 2.4.19pre3aa2 H. Peter Anvin
2002-03-14 18:00 ` 2.4.19pre3aa2 Andrew Morton
2002-03-14 22:57 ` 2.4.19pre3aa2 Jari Ruusu
2002-03-15 10:56   ` 2.4.19pre3aa2 Jens Axboe
2002-03-15 11:06     ` 2.4.19pre3aa2 Jens Axboe
2002-03-15 17:35     ` 2.4.19pre3aa2 Jari Ruusu
2002-03-15 17:57       ` 2.4.19pre3aa2 Andrea Arcangeli
2002-03-16 12:10         ` 2.4.19pre3aa2 Jari Ruusu
2002-03-16 13:54           ` 2.4.19pre3aa2 Andrea Arcangeli
2002-03-18 19:13       ` 2.4.19pre3aa2 Jens Axboe
2002-03-19 23:26         ` 2.4.19pre3aa2 Jari Ruusu
2002-03-20  7:54           ` 2.4.19pre3aa2 Jens Axboe
2002-03-20 18:16             ` 2.4.19pre3aa2 Jari Ruusu
2002-03-20 14:21           ` 2.4.19pre3aa2 Herbert Valerio Riedel
2002-03-15 12:19   ` 2.4.19pre3aa2 Herbert Valerio Riedel
2002-03-15 17:36     ` 2.4.19pre3aa2 Jari Ruusu
2002-03-15 18:36       ` 2.4.19pre3aa2 Herbert Valerio Riedel
2002-03-16 12:12         ` Jari Ruusu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3C9336A4.7757FD1E@pp.inet.fi \
    --to=jari.ruusu@pp.inet.fi \
    --cc=andrea@suse.de \
    --cc=hvr@hvrlab.org \
    --cc=linux-crypto@nl.linux.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcelo@conectiva.com.br \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.