search for: opaque2

Displaying 20 results from an estimated 34 matches for "opaque2".

Did you mean: opaque
2017 Aug 03
4
[PATCH v13 4/5] mm: support reporting free page blocks
...nsigned long * zones_size, > unsigned long zone_start_pfn, unsigned long *zholes_size); > extern void free_initmem(void); > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > +extern void walk_free_mem_block(void *opaque1, > + unsigned int min_order, > + void (*visit)(void *opaque2, > + unsigned long pfn, > + unsigned long nr_pages)); > +#endif Is the ifdef necessary. Sure only virtio balloon driver will use this currently but this looks like a generic functionality not specific to virtio at all so the ifdef is rather confusing. > /* >...
2017 Aug 03
4
[PATCH v13 4/5] mm: support reporting free page blocks
...nsigned long * zones_size, > unsigned long zone_start_pfn, unsigned long *zholes_size); > extern void free_initmem(void); > > +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) > +extern void walk_free_mem_block(void *opaque1, > + unsigned int min_order, > + void (*visit)(void *opaque2, > + unsigned long pfn, > + unsigned long nr_pages)); > +#endif Is the ifdef necessary. Sure only virtio balloon driver will use this currently but this looks like a generic functionality not specific to virtio at all so the ifdef is rather confusing. > /* >...
2011 Mar 10
1
[PATCH for discussion only] New event API (RHBZ#664558).
...realloc (g, g->events, + (g->nr_events+1) * sizeof (struct event)); + g->nr_events++; + + g->events[event_handle].event_bitmask = event_bitmask; + g->events[event_handle].cb = cb; + g->events[event_handle].opaque = opaque; + g->events[event_handle].opaque2 = NULL; + + return event_handle; +} + +void +guestfs_delete_event_callback (guestfs_h *g, int event_handle) +{ + if (event_handle < 0 || event_handle >= (int) g->nr_events) + return; + + /* Set the event_bitmask to 0, which will ensure that this callback + * cannot match any event...
2017 Aug 03
0
[PATCH v13 4/5] mm: support reporting free page blocks
...> unsigned long zone_start_pfn, unsigned long *zholes_size); >> extern void free_initmem(void); >> >> +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) >> +extern void walk_free_mem_block(void *opaque1, >> + unsigned int min_order, >> + void (*visit)(void *opaque2, >> + unsigned long pfn, >> + unsigned long nr_pages)); >> +#endif > Is the ifdef necessary. Sure only virtio balloon driver will use this > currently but this looks like a generic functionality not specific to > virtio at all so the ifdef is rather co...
2017 Aug 03
2
[PATCH v13 4/5] mm: support reporting free page blocks
...> > > > if (!free_area->nr_pages) > > continue; > > > > for_each_migratetype_order(order, mt) { > > list_for_each_entry(page, > > &free_area->free_list[mt], lru) { > > > > pfn = page_to_pfn(page); > > visit(opaque2, prn, 1<<order); > > } > > } > > } > > > > spin_unlock_irqrestore(&zone->lock, flags); > > } > > > >[...] > > > I think the above would take the lock for too long time. That's why we > prefer to take one free page...
2017 Aug 03
2
[PATCH v13 4/5] mm: support reporting free page blocks
...> > > > if (!free_area->nr_pages) > > continue; > > > > for_each_migratetype_order(order, mt) { > > list_for_each_entry(page, > > &free_area->free_list[mt], lru) { > > > > pfn = page_to_pfn(page); > > visit(opaque2, prn, 1<<order); > > } > > } > > } > > > > spin_unlock_irqrestore(&zone->lock, flags); > > } > > > >[...] > > > I think the above would take the lock for too long time. That's why we > prefer to take one free page...
2006 Jun 09
1
[LLVMdev] Why Is This Illegal?
Can anyone tell me where my blunder is in the following program? llvm-as reports: llvm-as: testit.ll:11: Can't store 'opaque *' into space of type 'opaque *'! Which doesn't seem to make sense to me. What is it that is illegal about storing a pointer to opaque in a space that is of type pointer to opaque? Is it just that you can't store pointers to opaque? %path =
2017 Jul 26
1
[PATCH v12 6/8] mm: support reporting free page blocks
On Wed 26-07-17 19:44:23, Wei Wang wrote: [...] > I thought about it more. Probably we can use the callback function with a > little change like this: > > void walk_free_mem(void *opaque1, void (*visit)(void *opaque2, unsigned long > pfn, > unsigned long nr_pages)) > { > ... > for_each_populated_zone(zone) { > for_each_migratetype_order(order, type) { > report_unused_page_block(zone, order, type, &page); > // from patch 6...
2017 Jul 26
1
[PATCH v12 6/8] mm: support reporting free page blocks
On Wed 26-07-17 19:44:23, Wei Wang wrote: [...] > I thought about it more. Probably we can use the callback function with a > little change like this: > > void walk_free_mem(void *opaque1, void (*visit)(void *opaque2, unsigned long > pfn, > unsigned long nr_pages)) > { > ... > for_each_populated_zone(zone) { > for_each_migratetype_order(order, type) { > report_unused_page_block(zone, order, type, &page); > // from patch 6...
2017 Aug 03
2
[PATCH v13 4/5] mm: support reporting free page blocks
...> continue; > >>> > >>> for_each_migratetype_order(order, mt) { > >>> list_for_each_entry(page, > >>> &free_area->free_list[mt], lru) { > >>> > >>> pfn = page_to_pfn(page); > >>> visit(opaque2, prn, 1<<order); > >>> } > >>> } > >>> } > >>> > >>> spin_unlock_irqrestore(&zone->lock, flags); > >>> } > >>> > >>>[...] > >> > >>I think the above would take the l...
2017 Aug 03
2
[PATCH v13 4/5] mm: support reporting free page blocks
...> continue; > >>> > >>> for_each_migratetype_order(order, mt) { > >>> list_for_each_entry(page, > >>> &free_area->free_list[mt], lru) { > >>> > >>> pfn = page_to_pfn(page); > >>> visit(opaque2, prn, 1<<order); > >>> } > >>> } > >>> } > >>> > >>> spin_unlock_irqrestore(&zone->lock, flags); > >>> } > >>> > >>>[...] > >> > >>I think the above would take the l...
2017 Aug 03
2
[PATCH v13 4/5] mm: support reporting free page blocks
...;>>> for_each_migratetype_order(order, mt) { > >>>>> list_for_each_entry(page, > >>>>> &free_area->free_list[mt], lru) { > >>>>> > >>>>> pfn = page_to_pfn(page); > >>>>> visit(opaque2, prn, 1<<order); > >>>>> } > >>>>> } > >>>>> } > >>>>> > >>>>> spin_unlock_irqrestore(&zone->lock, flags); > >>>>> } > >>>>> > >>>>>[.....
2017 Aug 03
2
[PATCH v13 4/5] mm: support reporting free page blocks
...;>>> for_each_migratetype_order(order, mt) { > >>>>> list_for_each_entry(page, > >>>>> &free_area->free_list[mt], lru) { > >>>>> > >>>>> pfn = page_to_pfn(page); > >>>>> visit(opaque2, prn, 1<<order); > >>>>> } > >>>>> } > >>>>> } > >>>>> > >>>>> spin_unlock_irqrestore(&zone->lock, flags); > >>>>> } > >>>>> > >>>>>[.....
2017 Aug 03
0
[PATCH v13 4/5] mm: support reporting free page blocks
...void free_area_init_node(int nid, unsigned long * zones_size, unsigned long zone_start_pfn, unsigned long *zholes_size); extern void free_initmem(void); +#if IS_ENABLED(CONFIG_VIRTIO_BALLOON) +extern void walk_free_mem_block(void *opaque1, + unsigned int min_order, + void (*visit)(void *opaque2, + unsigned long pfn, + unsigned long nr_pages)); +#endif /* * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK) * into the buddy system. The freed pages will be poisoned with pattern diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index...
2017 Aug 04
2
[PATCH v13 4/5] mm: support reporting free page blocks
...sy. Would it maybe >> make sense to rotate the list so that new head >> will consist of pages not yet sent to device? > No, I this should be strictly non-modifying API. Just get the context here for discussion: spin_lock_irqsave(&zone->lock, flags); ... visit(opaque2, pfn, 1<<order); spin_unlock_irqrestore(&zone->lock, flags); The concern is that the callback may cause the lock be taken too long. I think here we can have two options: - Option 1: Put a Note for the callback: the callback function should not block and it should finish as...
2017 Aug 04
2
[PATCH v13 4/5] mm: support reporting free page blocks
...sy. Would it maybe >> make sense to rotate the list so that new head >> will consist of pages not yet sent to device? > No, I this should be strictly non-modifying API. Just get the context here for discussion: spin_lock_irqsave(&zone->lock, flags); ... visit(opaque2, pfn, 1<<order); spin_unlock_irqrestore(&zone->lock, flags); The concern is that the callback may cause the lock be taken too long. I think here we can have two options: - Option 1: Put a Note for the callback: the callback function should not block and it should finish as...
2017 Jul 26
2
[PATCH v12 6/8] mm: support reporting free page blocks
On Wed 26-07-17 10:22:23, Wei Wang wrote: > On 07/25/2017 10:53 PM, Michal Hocko wrote: > >On Tue 25-07-17 14:47:16, Wang, Wei W wrote: > >>On Tuesday, July 25, 2017 8:42 PM, hal Hocko wrote: > >>>On Tue 25-07-17 19:56:24, Wei Wang wrote: > >>>>On 07/25/2017 07:25 PM, Michal Hocko wrote: > >>>>>On Tue 25-07-17 17:32:00, Wei Wang wrote:
2017 Jul 26
2
[PATCH v12 6/8] mm: support reporting free page blocks
On Wed 26-07-17 10:22:23, Wei Wang wrote: > On 07/25/2017 10:53 PM, Michal Hocko wrote: > >On Tue 25-07-17 14:47:16, Wang, Wei W wrote: > >>On Tuesday, July 25, 2017 8:42 PM, hal Hocko wrote: > >>>On Tue 25-07-17 19:56:24, Wei Wang wrote: > >>>>On 07/25/2017 07:25 PM, Michal Hocko wrote: > >>>>>On Tue 25-07-17 17:32:00, Wei Wang wrote:
2017 Aug 03
0
[PATCH v13 4/5] mm: support reporting free page blocks
...e_area->nr_pages) >>> continue; >>> >>> for_each_migratetype_order(order, mt) { >>> list_for_each_entry(page, >>> &free_area->free_list[mt], lru) { >>> >>> pfn = page_to_pfn(page); >>> visit(opaque2, prn, 1<<order); >>> } >>> } >>> } >>> >>> spin_unlock_irqrestore(&zone->lock, flags); >>> } >>> >>> [...] >> >> I think the above would take the lock for too long time. That's why we &g...
2017 Aug 04
0
[PATCH v13 4/5] mm: support reporting free page blocks
...o rotate the list so that new head > >>will consist of pages not yet sent to device? > >No, I this should be strictly non-modifying API. > > > Just get the context here for discussion: > > spin_lock_irqsave(&zone->lock, flags); > ... > visit(opaque2, pfn, 1<<order); > spin_unlock_irqrestore(&zone->lock, flags); > > The concern is that the callback may cause the lock be > taken too long. > > > I think here we can have two options: > - Option 1: Put a Note for the callback: the callback function >...