From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH] linux-2.6.18: miscellaneous adjustments (mostly missing from earlier upstream merges) Date: Mon, 04 Apr 2011 16:46:40 +0100 Message-ID: <4D9A04010200007800039DFF@vpn.id2.novell.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=__PartAB8772F0.0__=" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org This is a MIME message. If you are reading this text, you may want to consider changing to a mail reader or gateway that understands how to properly handle MIME multipart messages. --=__PartAB8772F0.0__= Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Remove unused bits, use kmem_cache_zalloc(), consistently constify instances of struct file_operations, fix an error cleanup path. Signed-off-by: Jan Beulich --- a/arch/i386/mm/ioremap-xen.c +++ b/arch/i386/mm/ioremap-xen.c @@ -154,21 +154,6 @@ int create_lookup_pte_addr(struct mm_str =20 EXPORT_SYMBOL(create_lookup_pte_addr); =20 -static int noop_fn( - pte_t *pte, struct page *pmd_page, unsigned long addr, void *data) -{ - return 0; -} - -int touch_pte_range(struct mm_struct *mm, - unsigned long address, - unsigned long size) -{ - return apply_to_page_range(mm, address, size, noop_fn, NULL); -}=20 - -EXPORT_SYMBOL(touch_pte_range); - /* * Does @address reside within a non-highmem page that is local to this = virtual * machine (i.e., not an I/O page, nor a memory page belonging to another = VM). --- a/arch/x86_64/kernel/process-xen.c +++ b/arch/x86_64/kernel/process-xen.c @@ -50,7 +50,6 @@ #include #include #include -#include #include #include #include --- a/drivers/char/agp/intel-agp.c +++ b/drivers/char/agp/intel-agp.c @@ -156,6 +156,10 @@ static struct page *i8xx_alloc_pages(voi if (change_page_attr(page, 4, PAGE_KERNEL_NOCACHE) < 0) { change_page_attr(page, 4, PAGE_KERNEL); global_flush_tlb(); +#ifdef CONFIG_XEN + xen_destroy_contiguous_region((unsigned long)page_address(p= age), + 2); +#endif __free_pages(page, 2); return NULL; } --- a/drivers/xen/balloon/balloon.c +++ b/drivers/xen/balloon/balloon.c @@ -111,7 +111,6 @@ static LIST_HEAD(ballooned_pages); /* Main work function, always executed in process context. */ static void balloon_process(void *unused); static DECLARE_WORK(balloon_worker, balloon_process, NULL); -static struct timer_list balloon_timer; =20 /* When ballooning out (allocating memory to return to Xen) we don't = really=20 want the kernel to try too hard since that can trigger the oom killer. = */ @@ -197,6 +196,7 @@ static void balloon_alarm(unsigned long=20 { schedule_work(&balloon_worker); } +static DEFINE_TIMER(balloon_timer, balloon_alarm, 0, 0); =20 static unsigned long current_target(void) { @@ -563,10 +563,6 @@ static int __init balloon_init(void) bs.balloon_high =3D 0; bs.driver_pages =3D 0UL; =20 - init_timer(&balloon_timer); - balloon_timer.data =3D 0; - balloon_timer.function =3D balloon_alarm; - =20 #ifdef CONFIG_PROC_FS if ((balloon_pde =3D create_xen_proc_entry("balloon", 0644)) = =3D=3D NULL) { WPRINTK("Unable to create /proc/xen/balloon.\n"); --- a/drivers/xen/blkback/interface.c +++ b/drivers/xen/blkback/interface.c @@ -41,11 +41,10 @@ blkif_t *blkif_alloc(domid_t domid) { blkif_t *blkif; =20 - blkif =3D kmem_cache_alloc(blkif_cachep, GFP_KERNEL); + blkif =3D kmem_cache_zalloc(blkif_cachep, GFP_KERNEL); if (!blkif) return ERR_PTR(-ENOMEM); =20 - memset(blkif, 0, sizeof(*blkif)); blkif->domid =3D domid; spin_lock_init(&blkif->blk_ring_lock); atomic_set(&blkif->refcnt, 1); --- a/drivers/xen/blktap/interface.c +++ b/drivers/xen/blktap/interface.c @@ -41,11 +41,10 @@ blkif_t *tap_alloc_blkif(domid_t domid) { blkif_t *blkif; =20 - blkif =3D kmem_cache_alloc(blkif_cachep, GFP_KERNEL); + blkif =3D kmem_cache_zalloc(blkif_cachep, GFP_KERNEL); if (!blkif) return ERR_PTR(-ENOMEM); =20 - memset(blkif, 0, sizeof(*blkif)); blkif->domid =3D domid; spin_lock_init(&blkif->blk_ring_lock); atomic_set(&blkif->refcnt, 1); --- a/drivers/xen/blktap2/control.c +++ b/drivers/xen/blktap2/control.c @@ -145,7 +145,7 @@ blktap_control_ioctl(struct inode *inode return -ENOIOCTLCMD; } =20 -static struct file_operations blktap_control_file_operations =3D { +static const struct file_operations blktap_control_file_operations =3D { .owner =3D THIS_MODULE, .ioctl =3D blktap_control_ioctl, }; --- a/drivers/xen/blktap2/ring.c +++ b/drivers/xen/blktap2/ring.c @@ -479,7 +479,7 @@ static unsigned int blktap_ring_poll(str return 0; } =20 -static struct file_operations blktap_ring_file_operations =3D { +static const struct file_operations blktap_ring_file_operations =3D { .owner =3D THIS_MODULE, .open =3D blktap_ring_open, .release =3D blktap_ring_release, --- a/drivers/xen/core/xen_proc.c +++ b/drivers/xen/core/xen_proc.c @@ -13,11 +13,13 @@ struct proc_dir_entry *create_xen_proc_e return create_proc_entry(name, mode, xen_base); } =20 +#ifdef MODULE EXPORT_SYMBOL_GPL(create_xen_proc_entry);=20 +#else =20 void remove_xen_proc_entry(const char *name) { remove_proc_entry(name, xen_base); } =20 -EXPORT_SYMBOL_GPL(remove_xen_proc_entry);=20 +#endif --- a/drivers/xen/netback/common.h +++ b/drivers/xen/netback/common.h @@ -100,7 +100,7 @@ typedef struct netif_st { struct timer_list tx_queue_timeout; =20 /* Statistics */ - int nr_copied_skbs; + unsigned long nr_copied_skbs; =20 /* Miscellaneous private stuff. */ struct list_head list; /* scheduling list */ --- a/drivers/xen/netback/interface.c +++ b/drivers/xen/netback/interface.c @@ -169,7 +169,7 @@ static const struct netif_stat { char name[ETH_GSTRING_LEN]; u16 offset; } netbk_stats[] =3D { - { "copied_skbs", offsetof(netif_t, nr_copied_skbs) }, + { "copied_skbs", offsetof(netif_t, nr_copied_skbs) / sizeof(long) = }, }; =20 static int netbk_get_stats_count(struct net_device *dev) @@ -180,11 +180,11 @@ static int netbk_get_stats_count(struct=20 static void netbk_get_ethtool_stats(struct net_device *dev, struct ethtool_stats *stats, u64 * = data) { - void *netif =3D netdev_priv(dev); + unsigned long *np =3D netdev_priv(dev); int i; =20 for (i =3D 0; i < ARRAY_SIZE(netbk_stats); i++) - data[i] =3D *(int *)(netif + netbk_stats[i].offset); + data[i] =3D np[netbk_stats[i].offset]; } =20 static void netbk_get_strings(struct net_device *dev, u32 stringset, u8 * = data) --- a/drivers/xen/scsiback/interface.c +++ b/drivers/xen/scsiback/interface.c @@ -46,11 +46,10 @@ struct vscsibk_info *vscsibk_info_alloc( { struct vscsibk_info *info; =20 - info =3D kmem_cache_alloc(scsiback_cachep, GFP_KERNEL); + info =3D kmem_cache_zalloc(scsiback_cachep, GFP_KERNEL); if (!info) return ERR_PTR(-ENOMEM); =20 - memset(info, 0, sizeof(*info)); info->domid =3D domid; spin_lock_init(&info->ring_lock); atomic_set(&info->nr_unreplied_reqs, 0); --- a/drivers/xen/tpmback/interface.c +++ b/drivers/xen/tpmback/interface.c @@ -25,11 +25,10 @@ static tpmif_t *alloc_tpmif(domid_t domi { tpmif_t *tpmif; =20 - tpmif =3D kmem_cache_alloc(tpmif_cachep, GFP_KERNEL); + tpmif =3D kmem_cache_zalloc(tpmif_cachep, GFP_KERNEL); if (tpmif =3D=3D NULL) goto out_of_memory; =20 - memset(tpmif, 0, sizeof (*tpmif)); tpmif->domid =3D domid; tpmif->status =3D DISCONNECTED; tpmif->bi =3D bi; --- a/drivers/xen/xenbus/xenbus_probe.c +++ b/drivers/xen/xenbus/xenbus_probe.c @@ -815,7 +815,6 @@ void xenbus_suspend(void) xenbus_backend_suspend(suspend_dev); xs_suspend(); } -EXPORT_SYMBOL_GPL(xenbus_suspend); =20 void xenbus_resume(void) { @@ -825,7 +824,6 @@ void xenbus_resume(void) bus_for_each_dev(&xenbus_frontend.bus, NULL, NULL, = resume_dev); xenbus_backend_resume(resume_dev); } -EXPORT_SYMBOL_GPL(xenbus_resume); =20 void xenbus_suspend_cancel(void) { @@ -834,12 +832,15 @@ void xenbus_suspend_cancel(void) bus_for_each_dev(&xenbus_frontend.bus, NULL, NULL, = suspend_cancel_dev); xenbus_backend_resume(suspend_cancel_dev); } -EXPORT_SYMBOL_GPL(xenbus_suspend_cancel); =20 /* A flag to determine if xenstored is 'ready' (i.e. has started) */ atomic_t xenbus_xsd_state =3D ATOMIC_INIT(XENBUS_XSD_UNCOMMITTED); =20 -int register_xenstore_notifier(struct notifier_block *nb) +int +#ifdef CONFIG_XEN +__init +#endif +register_xenstore_notifier(struct notifier_block *nb) { int ret =3D 0; =20 @@ -851,6 +852,7 @@ int register_xenstore_notifier(struct no =20 return ret; } +#ifndef CONFIG_XEN EXPORT_SYMBOL_GPL(register_xenstore_notifier); =20 void unregister_xenstore_notifier(struct notifier_block *nb) @@ -858,6 +860,7 @@ void unregister_xenstore_notifier(struct blocking_notifier_chain_unregister(&xenstore_chain, nb); } EXPORT_SYMBOL_GPL(unregister_xenstore_notifier); +#endif =20 =20 void xenbus_probe(void *unused) --- a/include/asm-i386/mach-xen/asm/pgtable.h +++ b/include/asm-i386/mach-xen/asm/pgtable.h @@ -521,9 +521,6 @@ int direct_kernel_remap_pfn_range(unsign int create_lookup_pte_addr(struct mm_struct *mm, unsigned long address, uint64_t *ptep); -int touch_pte_range(struct mm_struct *mm, - unsigned long address, - unsigned long size); =20 int xen_change_pte_range(struct mm_struct *mm, pmd_t *pmd, unsigned long addr, unsigned long end, pgprot_t newprot); --- a/include/asm-x86_64/mach-xen/asm/pgtable.h +++ b/include/asm-x86_64/mach-xen/asm/pgtable.h @@ -394,7 +394,6 @@ static inline int pmd_large(pmd_t pte) { =20 /* * Level 4 access. - * Never use these in the common code. */ #define pgd_page(pgd) ((unsigned long) __va(pgd_val(pgd) & PTE_MASK)) #define pgd_index(address) (((address) >> PGDIR_SHIFT) & (PTRS_PER_PGD-1))= @@ -543,10 +542,6 @@ int create_lookup_pte_addr(struct mm_str unsigned long address, uint64_t *ptep); =20 -int touch_pte_range(struct mm_struct *mm, - unsigned long address, - unsigned long size); - int xen_change_pte_range(struct mm_struct *mm, pmd_t *pmd, unsigned long addr, unsigned long end, pgprot_t newprot); =20 --=__PartAB8772F0.0__= Content-Type: text/plain; name="xen-cleanup-misc.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="xen-cleanup-misc.patch" Remove unused bits, use kmem_cache_zalloc(), consistently constify=0Ainstan= ces of struct file_operations, fix an error cleanup path.=0A=0ASigned-off-b= y: Jan Beulich =0A=0A--- a/arch/i386/mm/ioremap-xen.c= =0A+++ b/arch/i386/mm/ioremap-xen.c=0A@@ -154,21 +154,6 @@ int create_looku= p_pte_addr(struct mm_str=0A =0A EXPORT_SYMBOL(create_lookup_pte_addr);=0A = =0A-static int noop_fn(=0A- pte_t *pte, struct page *pmd_page, = unsigned long addr, void *data)=0A-{=0A- return 0;=0A-}=0A-=0A-int = touch_pte_range(struct mm_struct *mm,=0A- unsigned long = address,=0A- unsigned long size)=0A-{=0A- return = apply_to_page_range(mm, address, size, noop_fn, NULL);=0A-} =0A-=0A-EXPORT_= SYMBOL(touch_pte_range);=0A-=0A /*=0A * Does @address reside within a = non-highmem page that is local to this virtual=0A * machine (i.e., not an = I/O page, nor a memory page belonging to another VM).=0A--- a/arch/x86_64/k= ernel/process-xen.c=0A+++ b/arch/x86_64/kernel/process-xen.c=0A@@ -50,7 = +50,6 @@=0A #include =0A #include =0A #include = =0A-#include =0A #include = =0A #include =0A #include = =0A--- a/drivers/char/agp/intel-agp.c=0A+++ b/drivers/char/agp/= intel-agp.c=0A@@ -156,6 +156,10 @@ static struct page *i8xx_alloc_pages(voi= =0A if (change_page_attr(page, 4, PAGE_KERNEL_NOCACHE) < 0) {=0A = change_page_attr(page, 4, PAGE_KERNEL);=0A global_flush_tlb();= =0A+#ifdef CONFIG_XEN=0A+ xen_destroy_contiguous_region((unsi= gned long)page_address(page),=0A+ = 2);=0A+#endif=0A __free_pages(page, 2);=0A = return NULL;=0A }=0A--- a/drivers/xen/balloon/balloon.c=0A+++ = b/drivers/xen/balloon/balloon.c=0A@@ -111,7 +111,6 @@ static LIST_HEAD(ball= ooned_pages);=0A /* Main work function, always executed in process = context. */=0A static void balloon_process(void *unused);=0A static = DECLARE_WORK(balloon_worker, balloon_process, NULL);=0A-static struct = timer_list balloon_timer;=0A =0A /* When ballooning out (allocating memory = to return to Xen) we don't really =0A want the kernel to try too hard = since that can trigger the oom killer. */=0A@@ -197,6 +196,7 @@ static = void balloon_alarm(unsigned long =0A {=0A schedule_work(&balloon_work= er);=0A }=0A+static DEFINE_TIMER(balloon_timer, balloon_alarm, 0, 0);=0A = =0A static unsigned long current_target(void)=0A {=0A@@ -563,10 +563,6 @@ = static int __init balloon_init(void)=0A bs.balloon_high =3D 0;=0A = bs.driver_pages =3D 0UL;=0A =0A- init_timer(&balloon_timer);= =0A- balloon_timer.data =3D 0;=0A- balloon_timer.function =3D = balloon_alarm;=0A- =0A #ifdef CONFIG_PROC_FS=0A if ((balloon_pde = =3D create_xen_proc_entry("balloon", 0644)) =3D=3D NULL) {=0A = WPRINTK("Unable to create /proc/xen/balloon.\n");=0A--- a/drivers/xen/blkba= ck/interface.c=0A+++ b/drivers/xen/blkback/interface.c=0A@@ -41,11 +41,10 = @@ blkif_t *blkif_alloc(domid_t domid)=0A {=0A blkif_t *blkif;=0A =0A- = blkif =3D kmem_cache_alloc(blkif_cachep, GFP_KERNEL);=0A+ blkif =3D = kmem_cache_zalloc(blkif_cachep, GFP_KERNEL);=0A if (!blkif)=0A = return ERR_PTR(-ENOMEM);=0A =0A- memset(blkif, 0, sizeof(*blkif));= =0A blkif->domid =3D domid;=0A spin_lock_init(&blkif->blk_ring_loc= k);=0A atomic_set(&blkif->refcnt, 1);=0A--- a/drivers/xen/blktap/interface= .c=0A+++ b/drivers/xen/blktap/interface.c=0A@@ -41,11 +41,10 @@ blkif_t = *tap_alloc_blkif(domid_t domid)=0A {=0A blkif_t *blkif;=0A =0A- = blkif =3D kmem_cache_alloc(blkif_cachep, GFP_KERNEL);=0A+ blkif =3D = kmem_cache_zalloc(blkif_cachep, GFP_KERNEL);=0A if (!blkif)=0A = return ERR_PTR(-ENOMEM);=0A =0A- memset(blkif, 0, sizeof(*blkif));= =0A blkif->domid =3D domid;=0A spin_lock_init(&blkif->blk_ring_loc= k);=0A atomic_set(&blkif->refcnt, 1);=0A--- a/drivers/xen/blktap2/control.= c=0A+++ b/drivers/xen/blktap2/control.c=0A@@ -145,7 +145,7 @@ blktap_contro= l_ioctl(struct inode *inode=0A return -ENOIOCTLCMD;=0A }=0A =0A-static = struct file_operations blktap_control_file_operations =3D {=0A+static = const struct file_operations blktap_control_file_operations =3D {=0A = .owner =3D THIS_MODULE,=0A .ioctl =3D blktap_control_ioctl,=0A = };=0A--- a/drivers/xen/blktap2/ring.c=0A+++ b/drivers/xen/blktap2/ring.c=0A= @@ -479,7 +479,7 @@ static unsigned int blktap_ring_poll(str=0A = return 0;=0A }=0A =0A-static struct file_operations blktap_ring_file_operat= ions =3D {=0A+static const struct file_operations blktap_ring_file_operatio= ns =3D {=0A .owner =3D THIS_MODULE,=0A .open =3D blktap_ring_o= pen,=0A .release =3D blktap_ring_release,=0A--- a/drivers/xen/core= /xen_proc.c=0A+++ b/drivers/xen/core/xen_proc.c=0A@@ -13,11 +13,13 @@ = struct proc_dir_entry *create_xen_proc_e=0A return create_proc_entry(na= me, mode, xen_base);=0A }=0A =0A+#ifdef MODULE=0A EXPORT_SYMBOL_GPL(create_= xen_proc_entry); =0A+#else=0A =0A void remove_xen_proc_entry(const char = *name)=0A {=0A remove_proc_entry(name, xen_base);=0A }=0A =0A-EXPORT_SYMBO= L_GPL(remove_xen_proc_entry); =0A+#endif=0A--- a/drivers/xen/netback/common= .h=0A+++ b/drivers/xen/netback/common.h=0A@@ -100,7 +100,7 @@ typedef = struct netif_st {=0A struct timer_list tx_queue_timeout;=0A =0A /* = Statistics */=0A- int nr_copied_skbs;=0A+ unsigned long nr_copied_skb= s;=0A =0A /* Miscellaneous private stuff. */=0A struct list_head = list; /* scheduling list */=0A--- a/drivers/xen/netback/interface.c=0A+++ = b/drivers/xen/netback/interface.c=0A@@ -169,7 +169,7 @@ static const = struct netif_stat {=0A char name[ETH_GSTRING_LEN];=0A u16 offset;=0A } = netbk_stats[] =3D {=0A- { "copied_skbs", offsetof(netif_t, nr_copied_skbs) = },=0A+ { "copied_skbs", offsetof(netif_t, nr_copied_skbs) / sizeof(long) = },=0A };=0A =0A static int netbk_get_stats_count(struct net_device = *dev)=0A@@ -180,11 +180,11 @@ static int netbk_get_stats_count(struct =0A = static void netbk_get_ethtool_stats(struct net_device *dev,=0A = struct ethtool_stats *stats, u64 * data)=0A {=0A- void = *netif =3D netdev_priv(dev);=0A+ unsigned long *np =3D netdev_priv(d= ev);=0A int i;=0A =0A for (i =3D 0; i < ARRAY_SIZE(netbk_stats); = i++)=0A- data[i] =3D *(int *)(netif + netbk_stats[i].offset)= ;=0A+ data[i] =3D np[netbk_stats[i].offset];=0A }=0A =0A static = void netbk_get_strings(struct net_device *dev, u32 stringset, u8 * = data)=0A--- a/drivers/xen/scsiback/interface.c=0A+++ b/drivers/xen/scsiback= /interface.c=0A@@ -46,11 +46,10 @@ struct vscsibk_info *vscsibk_info_alloc(= =0A {=0A struct vscsibk_info *info;=0A =0A- info =3D kmem_cache= _alloc(scsiback_cachep, GFP_KERNEL);=0A+ info =3D kmem_cache_zalloc(= scsiback_cachep, GFP_KERNEL);=0A if (!info)=0A return = ERR_PTR(-ENOMEM);=0A =0A- memset(info, 0, sizeof(*info));=0A = info->domid =3D domid;=0A spin_lock_init(&info->ring_lock);=0A = atomic_set(&info->nr_unreplied_reqs, 0);=0A--- a/drivers/xen/tpmback/interf= ace.c=0A+++ b/drivers/xen/tpmback/interface.c=0A@@ -25,11 +25,10 @@ static = tpmif_t *alloc_tpmif(domid_t domi=0A {=0A tpmif_t *tpmif;=0A =0A- = tpmif =3D kmem_cache_alloc(tpmif_cachep, GFP_KERNEL);=0A+ tpmif =3D = kmem_cache_zalloc(tpmif_cachep, GFP_KERNEL);=0A if (tpmif =3D=3D = NULL)=0A goto out_of_memory;=0A =0A- memset(tpmif, 0, = sizeof (*tpmif));=0A tpmif->domid =3D domid;=0A tpmif->status =3D = DISCONNECTED;=0A tpmif->bi =3D bi;=0A--- a/drivers/xen/xenbus/xenbus= _probe.c=0A+++ b/drivers/xen/xenbus/xenbus_probe.c=0A@@ -815,7 +815,6 @@ = void xenbus_suspend(void)=0A xenbus_backend_suspend(suspend_dev);=0A = xs_suspend();=0A }=0A-EXPORT_SYMBOL_GPL(xenbus_suspend);=0A =0A void = xenbus_resume(void)=0A {=0A@@ -825,7 +824,6 @@ void xenbus_resume(void)=0A = bus_for_each_dev(&xenbus_frontend.bus, NULL, NULL, = resume_dev);=0A xenbus_backend_resume(resume_dev);=0A }=0A-EXPORT_S= YMBOL_GPL(xenbus_resume);=0A =0A void xenbus_suspend_cancel(void)=0A = {=0A@@ -834,12 +832,15 @@ void xenbus_suspend_cancel(void)=0A = bus_for_each_dev(&xenbus_frontend.bus, NULL, NULL, suspend_cancel_dev);=0A = xenbus_backend_resume(suspend_cancel_dev);=0A }=0A-EXPORT_SYMBOL_GP= L(xenbus_suspend_cancel);=0A =0A /* A flag to determine if xenstored is = 'ready' (i.e. has started) */=0A atomic_t xenbus_xsd_state =3D ATOMIC_INIT(= XENBUS_XSD_UNCOMMITTED);=0A =0A-int register_xenstore_notifier(struct = notifier_block *nb)=0A+int=0A+#ifdef CONFIG_XEN=0A+__init=0A+#endif=0A+regi= ster_xenstore_notifier(struct notifier_block *nb)=0A {=0A int ret = =3D 0;=0A =0A@@ -851,6 +852,7 @@ int register_xenstore_notifier(struct = no=0A =0A return ret;=0A }=0A+#ifndef CONFIG_XEN=0A EXPORT_SYMBOL_GPL= (register_xenstore_notifier);=0A =0A void unregister_xenstore_notifier(stru= ct notifier_block *nb)=0A@@ -858,6 +860,7 @@ void unregister_xenstore_notif= ier(struct=0A blocking_notifier_chain_unregister(&xenstore_chain, = nb);=0A }=0A EXPORT_SYMBOL_GPL(unregister_xenstore_notifier);=0A+#endif=0A = =0A =0A void xenbus_probe(void *unused)=0A--- a/include/asm-i386/mach-xen/a= sm/pgtable.h=0A+++ b/include/asm-i386/mach-xen/asm/pgtable.h=0A@@ -521,9 = +521,6 @@ int direct_kernel_remap_pfn_range(unsign=0A int create_lookup_pte= _addr(struct mm_struct *mm,=0A unsigned long = address,=0A uint64_t *ptep);=0A-int touch_pte_ra= nge(struct mm_struct *mm,=0A- unsigned long address,=0A-= unsigned long size);=0A =0A int xen_change_pte_range(st= ruct mm_struct *mm, pmd_t *pmd,=0A unsigned long addr, = unsigned long end, pgprot_t newprot);=0A--- a/include/asm-x86_64/mach-xen/a= sm/pgtable.h=0A+++ b/include/asm-x86_64/mach-xen/asm/pgtable.h=0A@@ -394,7 = +394,6 @@ static inline int pmd_large(pmd_t pte) {=0A =0A /*=0A * Level 4 = access.=0A- * Never use these in the common code.=0A */=0A #define = pgd_page(pgd) ((unsigned long) __va(pgd_val(pgd) & PTE_MASK))=0A #define = pgd_index(address) (((address) >> PGDIR_SHIFT) & (PTRS_PER_PGD-1))=0A@@ = -543,10 +542,6 @@ int create_lookup_pte_addr(struct mm_str=0A = unsigned long address,=0A = uint64_t *ptep);=0A =0A-int touch_pte_range(struct mm_struct *mm,=0A- = unsigned long address,=0A- unsigned long = size);=0A-=0A int xen_change_pte_range(struct mm_struct *mm, pmd_t = *pmd,=0A unsigned long addr, unsigned long end, pgprot_t = newprot);=0A =0A --=__PartAB8772F0.0__= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --=__PartAB8772F0.0__=--