Merge lp:~n-muench/ubuntu/maverick/open-vm-tools/open-vm-tools-fix-598542 into lp:ubuntu/maverick/open-vm-tools

Proposed by Nate Muench (Mink)
Status: Merged
Merged at revision: 19
Proposed branch: lp:~n-muench/ubuntu/maverick/open-vm-tools/open-vm-tools-fix-598542
Merge into: lp:ubuntu/maverick/open-vm-tools
Diff against target: 178 lines (+154/-0)
4 files modified
debian/changelog (+6/-0)
debian/patches/03-vmxnet.patch (+27/-0)
debian/patches/04-vsock.patch (+119/-0)
debian/patches/series (+2/-0)
To merge this branch: bzr merge lp:~n-muench/ubuntu/maverick/open-vm-tools/open-vm-tools-fix-598542
Reviewer Review Type Date Requested Status
Ubuntu Sponsors Pending
Review via email: mp+30351@code.launchpad.net

Description of the change

This proposal adds support to Maverick kernels. There is a newer upstream available, which Debian has pushed to their repos. I would've pushed that new version in this branch, with the fixes for the Maverick kernel (including the adjusted patches), but I don't know what other changes need to be made for the newer version. So I guess I want to fix the old thing that's broken, instead of pushing the new version, that might cause more problems.

Also, I'm sorry, I know this branch as been disappearing and appearing again, but I'm trying to get this proposal as perfect as possible. I'm still getting a hold of this.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2010-05-29 17:35:25 +0000
3+++ debian/changelog 2010-07-19 23:13:47 +0000
4@@ -1,3 +1,9 @@
5+open-vm-tools (2010.04.25-253928-2+ubuntu2) maverick; urgency=low
6+
7+ * Fixes building on Maverick kernels (LP: #598542).
8+
9+ -- Nate Muench <NowIWillDestroyAbydos@gmail.com> Mon, 19 Jul 2010 18:01:17 -0500
10+
11 open-vm-tools (2010.04.25-253928-2+ubuntu1) maverick; urgency=low
12
13 * Merge from debian testing, remaining changes:
14
15=== added file 'debian/patches/03-vmxnet.patch'
16--- debian/patches/03-vmxnet.patch 1970-01-01 00:00:00 +0000
17+++ debian/patches/03-vmxnet.patch 2010-07-19 23:13:47 +0000
18@@ -0,0 +1,27 @@
19+$ diff -u vmxnet.c~ vmxnet.c
20+--- open-vm-tools.orig/modules/linux/vmxnet/vmxnet.c~ 2010-05-31 18:13:50.000000000 -0400
21++++ open-vm-tools/modules/linux/vmxnet/vmxnet.c 2010-06-25 12:20:36.398921999 -0400
22+@@ -2910,7 +2910,7 @@
23+ {
24+ struct Vmxnet_Private *lp = netdev_priv(dev);
25+ volatile u16 *mcast_table = (u16 *)lp->dd->LADRF;
26+- struct dev_mc_list *dmi = dev->mc_list;
27++ struct netdev_hw_addr *ha; // struct dev_mc_list *dmi = dev->mc_list;
28+ u8 *addrs;
29+ int i, j, bit, byte;
30+ u32 crc, poly = CRC_POLYNOMIAL_LE;
31+@@ -2919,10 +2919,11 @@
32+ lp->dd->LADRF[0] = 0;
33+ lp->dd->LADRF[1] = 0;
34+
35++ i = 0;
36+ /* Add addresses */
37+- for (i = 0; i < dev->mc_count; i++){
38+- addrs = dmi->dmi_addr;
39+- dmi = dmi->next;
40++ netdev_for_each_mc_addr(ha, dev) { // for (i = 0; i < dev->mc_count; i++){
41++ addrs = ha->addr; //dmi->dmi_addr;
42++ ++i; // dmi = dmi->next;
43+
44+ /* multicast address? */
45+ if (!(*addrs & 1))
46
47=== added file 'debian/patches/04-vsock.patch'
48--- debian/patches/04-vsock.patch 1970-01-01 00:00:00 +0000
49+++ debian/patches/04-vsock.patch 2010-07-19 23:13:47 +0000
50@@ -0,0 +1,119 @@
51+--- open-vm-tools.orig/modules/linux/vsock/linux/af_vsock.c.orig 2010-05-31 18:13:50.000000000 -0400
52++++ open-vm-tools/modules/linux/vsock/linux/af_vsock.c 2010-06-25 11:42:23.248921999 -0400
53+@@ -3472,7 +3472,7 @@
54+ * a notification of an error.
55+ */
56+ timeout = sock_sndtimeo(sk, flags & O_NONBLOCK);
57+- compat_init_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
58++ compat_init_prepare_to_wait(compat_sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
59+
60+ while (sk->compat_sk_state != SS_CONNECTED && sk->compat_sk_err == 0) {
61+ if (timeout == 0) {
62+@@ -3495,7 +3495,7 @@
63+ goto outWaitError;
64+ }
65+
66+- compat_cont_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
67++ compat_cont_prepare_to_wait(compat_sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
68+ }
69+
70+ if (sk->compat_sk_err) {
71+@@ -3507,7 +3507,7 @@
72+ }
73+
74+ outWait:
75+- compat_finish_wait(sk->compat_sk_sleep, &wait, TASK_RUNNING);
76++ compat_finish_wait(compat_sk_sleep(sk), &wait, TASK_RUNNING);
77+ out:
78+ release_sock(sk);
79+ return err;
80+@@ -3567,7 +3567,7 @@
81+ * upon connection establishment.
82+ */
83+ timeout = sock_sndtimeo(listener, flags & O_NONBLOCK);
84+- compat_init_prepare_to_wait(listener->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
85++ compat_init_prepare_to_wait(compat_sk_sleep(listener), &wait, TASK_INTERRUPTIBLE);
86+
87+ while ((connected = VSockVmciDequeueAccept(listener)) == NULL &&
88+ listener->compat_sk_err == 0) {
89+@@ -3583,7 +3583,7 @@
90+ goto outWait;
91+ }
92+
93+- compat_cont_prepare_to_wait(listener->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
94++ compat_cont_prepare_to_wait(compat_sk_sleep(listener), &wait, TASK_INTERRUPTIBLE);
95+ }
96+
97+ if (listener->compat_sk_err) {
98+@@ -3617,7 +3617,7 @@
99+ }
100+
101+ outWait:
102+- compat_finish_wait(listener->compat_sk_sleep, &wait, TASK_RUNNING);
103++ compat_finish_wait(compat_sk_sleep(listener), &wait, TASK_RUNNING);
104+ out:
105+ release_sock(listener);
106+ return err;
107+@@ -3715,7 +3715,7 @@
108+ sk = sock->sk;
109+ vsk = vsock_sk(sk);
110+
111+- poll_wait(file, sk->compat_sk_sleep, wait);
112++ poll_wait(file, compat_sk_sleep(sk), wait);
113+ mask = 0;
114+
115+ if (sk->compat_sk_err) {
116+@@ -4314,7 +4314,7 @@
117+ goto out;
118+ }
119+
120+- compat_init_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
121++ compat_init_prepare_to_wait(compat_sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
122+
123+ while (totalWritten < len) {
124+ Bool sentWrote;
125+@@ -4352,7 +4352,7 @@
126+ goto outWait;
127+ }
128+
129+- compat_cont_prepare_to_wait(sk->compat_sk_sleep,
130++ compat_cont_prepare_to_wait(compat_sk_sleep(sk),
131+ &wait, TASK_INTERRUPTIBLE);
132+ }
133+
134+@@ -4404,7 +4404,7 @@
135+ if (totalWritten > 0) {
136+ err = totalWritten;
137+ }
138+- compat_finish_wait(sk->compat_sk_sleep, &wait, TASK_RUNNING);
139++ compat_finish_wait(compat_sk_sleep(sk), &wait, TASK_RUNNING);
140+ out:
141+ release_sock(sk);
142+ return err;
143+@@ -4590,7 +4590,7 @@
144+ goto out;
145+ }
146+
147+- compat_init_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
148++ compat_init_prepare_to_wait(compat_sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
149+
150+ while ((ready = VSockVmciStreamHasData(vsk)) < target &&
151+ sk->compat_sk_err == 0 &&
152+@@ -4630,7 +4630,7 @@
153+ goto outWait;
154+ }
155+
156+- compat_cont_prepare_to_wait(sk->compat_sk_sleep, &wait, TASK_INTERRUPTIBLE);
157++ compat_cont_prepare_to_wait(compat_sk_sleep(sk), &wait, TASK_INTERRUPTIBLE);
158+ }
159+
160+ if (sk->compat_sk_err) {
161+@@ -4694,7 +4694,7 @@
162+ err = copied;
163+
164+ outWait:
165+- compat_finish_wait(sk->compat_sk_sleep, &wait, TASK_RUNNING);
166++ compat_finish_wait(compat_sk_sleep(sk), &wait, TASK_RUNNING);
167+ out:
168+ release_sock(sk);
169+ return err;
170
171=== modified file 'debian/patches/series'
172--- debian/patches/series 2009-06-01 17:13:07 +0000
173+++ debian/patches/series 2010-07-19 23:13:47 +0000
174@@ -1,2 +1,4 @@
175 01-kvers.patch
176 02-procps.patch
177+03-vmxnet.patch
178+04-vsock.patch

Subscribers

People subscribed via source and target branches