lkml.org 
[lkml]   [1998]   [Dec]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH]-ibcs Re: 2.1.131-ac5 - I2O is great to have but does not build...
On Thu, Dec 10, 1998 at 05:44:38PM +0000, Alan Cox wrote:
> > :-)) Who is to patch iBCS ? Will it be developers or have I to do it myself?
>
> Why not make it easier for the developers ;)
>
> > I do recall that Linus did rather officially left Alan to look after the
> > biting penguin :-))
>
> The actual changes that have gone on are fairly small. The structures
> used for the sys5 message and shm objects have been split into a seperate
> kernel and user visible object to avoid breaking binary compatibility. If
> iBCS is just wrapping the sys_ipc*() calls then you want to use
> old_msg_qbytes old_msg_cbytes instead of msg_qbytes/cbytes
>
> Alan
Just in case... attached patch makes ibcs compile Ok; I did not test it
but it seems the right-thing-todo.

Regards

--
-- Juanjo http://juanjox.home.ml.org/

== free collective power ==---.
Linux <------------'
ipc compilation fixes for 2.1.131-ac6 (changes in kernel ipc headers)
--- ibcs-2.1-981105/iBCSemul/ipc.c Wed Oct 14 18:54:27 1998
+++ ibcs-2.1-981105-2.1.131ac6/iBCSemul/ipc.c Wed Dec 9 09:40:46 1998
@@ -768,66 +768,66 @@
static void
imsq_to_lmsq(struct ibcs_msqid_ds *im, struct msqid_ds *lm)
{
- ip_to_lp(&im->msg_perm, &lm->msg_perm);
- lm->msg_first = im->msg_first;
- lm->msg_last = im->msg_last;
- lm->msg_cbytes = im->msg_cbytes;
+ ip_to_lp(&im->msg_perm, &lm->u.msg_perm);
+ lm->u.msg_first = im->msg_first;
+ lm->u.msg_last = im->msg_last;
+ lm->c.msg_cbytes = im->msg_cbytes;
lm->msg_qnum = im->msg_qnum;
- lm->msg_qbytes = im->msg_qbytes;
+ lm->q.msg_qbytes = im->msg_qbytes;
lm->msg_lspid = im->msg_lspid;
lm->msg_lrpid = im->msg_lrpid;
- lm->msg_stime = im->msg_stime;
- lm->msg_rtime = im->msg_rtime;
- lm->msg_ctime = im->msg_ctime;
+ lm->u.msg_stime = im->msg_stime;
+ lm->u.msg_rtime = im->msg_rtime;
+ lm->u.msg_ctime = im->msg_ctime;
}

static void
lmsq_to_imsq(struct msqid_ds *lm, struct ibcs_msqid_ds *im)
{
- lp_to_ip(&lm->msg_perm, &im->msg_perm);
- im->msg_first = lm->msg_first;
- im->msg_last = lm->msg_last;
- im->msg_cbytes = lm->msg_cbytes;
+ lp_to_ip(&lm->u.msg_perm, &im->msg_perm);
+ im->msg_first = lm->u.msg_first;
+ im->msg_last = lm->u.msg_last;
+ im->msg_cbytes = lm->c.msg_cbytes;
im->msg_qnum = lm->msg_qnum;
- im->msg_qbytes = lm->msg_qbytes;
+ im->msg_qbytes = lm->q.msg_qbytes;
im->msg_lspid = lm->msg_lspid;
im->msg_lrpid = lm->msg_lrpid;
- im->msg_stime = lm->msg_stime;
- im->msg_rtime = lm->msg_rtime;
- im->msg_ctime = lm->msg_ctime;
+ im->msg_stime = lm->u.msg_stime;
+ im->msg_rtime = lm->u.msg_rtime;
+ im->msg_ctime = lm->u.msg_ctime;
}

static void
imsq_to_lmsq_l(struct ibcs_msqid_ds_l *im, struct msqid_ds *lm)
{
- ip_to_lp_l(&im->msg_perm, &lm->msg_perm);
- lm->msg_first = im->msg_first;
- lm->msg_last = im->msg_last;
- lm->msg_cbytes = im->msg_cbytes;
+ ip_to_lp_l(&im->msg_perm, &lm->u.msg_perm);
+ lm->u.msg_first = im->msg_first;
+ lm->u.msg_last = im->msg_last;
+ lm->c.msg_cbytes = im->msg_cbytes;
lm->msg_qnum = im->msg_qnum;
- lm->msg_qbytes = im->msg_qbytes;
+ lm->q.msg_qbytes = im->msg_qbytes;
lm->msg_lspid = im->msg_lspid;
lm->msg_lrpid = im->msg_lrpid;
- lm->msg_stime = im->msg_stime;
- lm->msg_rtime = im->msg_rtime;
- lm->msg_ctime = im->msg_ctime;
+ lm->u.msg_stime = im->msg_stime;
+ lm->u.msg_rtime = im->msg_rtime;
+ lm->u.msg_ctime = im->msg_ctime;
}

static void
lmsq_to_imsq_l(struct msqid_ds *lm, struct ibcs_msqid_ds_l *im)
{
memset(im, 0, sizeof(*im));
- lp_to_ip_l(&lm->msg_perm, &im->msg_perm);
- im->msg_first = lm->msg_first;
- im->msg_last = lm->msg_last;
- im->msg_cbytes = lm->msg_cbytes;
+ lp_to_ip_l(&lm->u.msg_perm, &im->msg_perm);
+ im->msg_first = lm->u.msg_first;
+ im->msg_last = lm->u.msg_last;
+ im->msg_cbytes = lm->c.msg_cbytes;
im->msg_qnum = lm->msg_qnum;
- im->msg_qbytes = lm->msg_qbytes;
+ im->msg_qbytes = lm->q.msg_qbytes;
im->msg_lspid = lm->msg_lspid;
im->msg_lrpid = lm->msg_lrpid;
- im->msg_stime = lm->msg_stime;
- im->msg_rtime = lm->msg_rtime;
- im->msg_ctime = lm->msg_ctime;
+ im->msg_stime = lm->u.msg_stime;
+ im->msg_rtime = lm->u.msg_rtime;
+ im->msg_ctime = lm->u.msg_ctime;
}

int
diff -ur ibcs-2.1-981105/include/ibcs/abi4.h ibcs-2.1-981105-2.1.131ac6/include/ibcs/abi4.h
--- ibcs-2.1-981105/include/ibcs/abi4.h Thu Oct 8 18:32:57 1998
+++ ibcs-2.1-981105-2.1.131ac6/include/ibcs/abi4.h Wed Dec 9 13:11:48 1998
@@ -90,6 +90,7 @@
unsigned long f_bavail;
unsigned long f_files;
unsigned long f_free;
+ unsigned long f_favail;
unsigned long f_sid;
char f_basetype[16];
unsigned long f_flag;
\
 
 \ /
  Last update: 2005-03-22 13:46    [W:0.059 / U:0.136 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site