mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Debian woody dpkg no longer works with recent linux kernel.
@ 2005-10-09 15:16 Junichi Uekawa
  2005-10-09 22:33 ` Bug#322309: " Scott James Remnant
  0 siblings, 1 reply; 6+ messages in thread
From: Junichi Uekawa @ 2005-10-09 15:16 UTC (permalink / raw)
  To: 322309-submitter, 322309, 329468, 329468-submitter, debian-devel,
	linux-kernel, 332903-submitter


Hi,

dpkg in Debian woody (3.0) is broken by recent linux kernels;
due to the following command changing behavior (mmap of 
zero-byte length):

  addr=mmap(NULL, 0, PROT_READ, MAP_SHARED, fd, 0);

These bugs are caused by mmap changing behavior; 
it used to return NULL when given a length of 0.
However, it now returns -1, and gives back an errno=EINVAL.

This triggers problems in Debian installation.
The workaround is to give some content to the files:
/var/lib/status
/var/lib/available



$ uname -r
2.6.14-rc3dancer-gedb4a353
$ ./a.c b
a.c: In function 'main':
a.c:26: warning: comparison between pointer and integer
mmap: Invalid argument
$ ls -l b
-rw-r--r--  1 dancer dancer 0 2005-10-09 22:29 b




$ uname -r
2.2.26
$ cat a.c
/*BINFMTC:
 * */
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <fcntl.h>
#include <sys/mman.h>

int main(int argc, char **argv)
{
  int fd;
  void*addr;
  if (argc < 2)
    {
      fprintf(stderr, "Filename required\n");
      return 1;
    }

  if((fd=open(argv[1], O_RDONLY))==-1)
    {
      perror("open");
      return 1;
    }
  addr=mmap(NULL, 0, PROT_READ, MAP_SHARED, fd, 0);
  if (addr==-1)
    {
      perror("mmap");
      return 1;
    }
  printf ("%p\n", addr);
  if(close(fd)==-1)
    {
      perror("close");
      return 1;
    }
  return 0;
}
$ ./a.out b
(nil)






regards,
	junichi

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2005-10-11 15:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-10-09 15:16 Debian woody dpkg no longer works with recent linux kernel Junichi Uekawa
2005-10-09 22:33 ` Bug#322309: " Scott James Remnant
2005-10-10  1:07   ` Junichi Uekawa
2005-10-11 14:24   ` Junichi Uekawa
2005-10-11 15:15     ` Junichi Uekawa
2005-10-11 15:19     ` Jon Masters

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome