Displaying 20 results from an estimated 53 matches for "config_page_poisoning_no_san".
2020 Apr 16
3
[PATCH] virtio-balloon: Disable free page hinting/reporting if page poison is disabled
...7be..08bc86a6e468 100644
--- a/drivers/virtio/virtio_balloon.c
+++ b/drivers/virtio/virtio_balloon.c
@@ -1110,8 +1110,12 @@ static int virtballoon_validate(struct virtio_device *vdev)
/* Tell the host whether we care about poisoned pages. */
if (!want_init_on_free() &&
(IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
- !page_poisoning_enabled()))
+ !page_poisoning_enabled())) {
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
+ } else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON)) {
+ __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_FREE_PAGE_HINT);
+ __virtio_clear_bit(vdev,...
2020 Apr 16
3
[PATCH] virtio-balloon: Disable free page hinting/reporting if page poison is disabled
...7be..08bc86a6e468 100644
--- a/drivers/virtio/virtio_balloon.c
+++ b/drivers/virtio/virtio_balloon.c
@@ -1110,8 +1110,12 @@ static int virtballoon_validate(struct virtio_device *vdev)
/* Tell the host whether we care about poisoned pages. */
if (!want_init_on_free() &&
(IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
- !page_poisoning_enabled()))
+ !page_poisoning_enabled())) {
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
+ } else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON)) {
+ __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_FREE_PAGE_HINT);
+ __virtio_clear_bit(vdev,...
2017 Nov 17
3
[virtio-dev] Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
...gt; if (!page_poisoning_enabled())
> return;
>
Thought about it more, I think it would be better to put this logic to
virtio_balloon:
send_free_page_cmd_id(vb, &vb->start_cmd_id);
if (page_poisoning_enabled() &&
!IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY))
walk_free_mem_block(vb, 0,
&virtio_balloon_send_free_pages);
send_free_page_cmd_id(vb, &vb->stop_cmd_id);
walk_free_mem_block() should be a more generic API, and this potential
page poisoning issue is specific to live migration which is only one use
ca...
2017 Nov 17
3
[virtio-dev] Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
...gt; if (!page_poisoning_enabled())
> return;
>
Thought about it more, I think it would be better to put this logic to
virtio_balloon:
send_free_page_cmd_id(vb, &vb->start_cmd_id);
if (page_poisoning_enabled() &&
!IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY))
walk_free_mem_block(vb, 0,
&virtio_balloon_send_free_pages);
send_free_page_cmd_id(vb, &vb->stop_cmd_id);
walk_free_mem_block() should be a more generic API, and this potential
page poisoning issue is specific to live migration which is only one use
ca...
2017 Dec 01
3
[PATCH v18 10/10] virtio-balloon: don't report free pages when page poisoning is enabled
...ith an outbuf */
> send_one_desc(vb, vb->free_page_vq, virt_to_phys(&vb->start_cmd_id),
> sizeof(uint32_t), false, true, false);
> - walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> + if (!(page_poisoning_enabled() &&
> + !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY)))
> + walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> /*
> * End by sending the stop id to the host with an outbuf. Use the
> * non-batching mode here to trigger a kick after adding the stop id.
PAGE_POISONING_ZERO is actually OK.
But I really would pre...
2017 Dec 01
3
[PATCH v18 10/10] virtio-balloon: don't report free pages when page poisoning is enabled
...ith an outbuf */
> send_one_desc(vb, vb->free_page_vq, virt_to_phys(&vb->start_cmd_id),
> sizeof(uint32_t), false, true, false);
> - walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> + if (!(page_poisoning_enabled() &&
> + !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY)))
> + walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> /*
> * End by sending the stop id to the host with an outbuf. Use the
> * non-batching mode here to trigger a kick after adding the stop id.
PAGE_POISONING_ZERO is actually OK.
But I really would pre...
2020 May 08
2
[PATCH v2 resubmit] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...about poisoned pages. */
+ /*
+ * Inform the hypervisor that our pages are poisoned or
+ * initialized. If we cannot do that then we should disable
+ * page reporting as it could potentially change the contents
+ * of our free pages.
+ */
if (!want_init_on_free() &&
(IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
!page_poisoning_enabled()))
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
+ else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
+ __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
__virtio_clear_bit(vdev, VIRTIO_F_IOMMU_PLATFORM);
return 0;
2020 May 08
2
[PATCH v2 resubmit] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...about poisoned pages. */
+ /*
+ * Inform the hypervisor that our pages are poisoned or
+ * initialized. If we cannot do that then we should disable
+ * page reporting as it could potentially change the contents
+ * of our free pages.
+ */
if (!want_init_on_free() &&
(IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
!page_poisoning_enabled()))
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
+ else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
+ __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
__virtio_clear_bit(vdev, VIRTIO_F_IOMMU_PLATFORM);
return 0;
2020 Apr 24
2
[PATCH v2] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...about poisoned pages. */
+ /*
+ * Inform the hypervisor that our pages are poisoned or
+ * initialized. If we cannot do that then we should disable
+ * page reporting as it could potentially change the contents
+ * of our free pages.
+ */
if (!want_init_on_free() &&
(IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
!page_poisoning_enabled()))
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
+ else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
+ __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
__virtio_clear_bit(vdev, VIRTIO_F_IOMMU_PLATFORM);
return 0;
2020 Apr 24
2
[PATCH v2] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...about poisoned pages. */
+ /*
+ * Inform the hypervisor that our pages are poisoned or
+ * initialized. If we cannot do that then we should disable
+ * page reporting as it could potentially change the contents
+ * of our free pages.
+ */
if (!want_init_on_free() &&
(IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
!page_poisoning_enabled()))
__virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
+ else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
+ __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
__virtio_clear_bit(vdev, VIRTIO_F_IOMMU_PLATFORM);
return 0;
2020 May 26
1
[PATCH v2 resubmit] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...; + * initialized. If we cannot do that then we should disable
> > + * page reporting as it could potentially change the contents
> > + * of our free pages.
> > + */
> > if (!want_init_on_free() &&
> > (IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
> > !page_poisoning_enabled()))
> > __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
> > + else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
> > + __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTI...
2017 Dec 11
1
[PATCH v18 10/10] virtio-balloon: don't report free pages when page poisoning is enabled
...vb->free_page_vq, virt_to_phys(&vb->start_cmd_id),
> > > sizeof(uint32_t), false, true, false);
> > > - walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> > > + if (!(page_poisoning_enabled() &&
> > > + !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY)))
> > > + walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> > > /*
> > > * End by sending the stop id to the host with an outbuf. Use the
> > > * non-batching mode here to trigger a kick after adding the stop id.
> > PAGE_PO...
2017 Dec 11
1
[PATCH v18 10/10] virtio-balloon: don't report free pages when page poisoning is enabled
...vb->free_page_vq, virt_to_phys(&vb->start_cmd_id),
> > > sizeof(uint32_t), false, true, false);
> > > - walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> > > + if (!(page_poisoning_enabled() &&
> > > + !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY)))
> > > + walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> > > /*
> > > * End by sending the stop id to the host with an outbuf. Use the
> > > * non-batching mode here to trigger a kick after adding the stop id.
> > PAGE_PO...
2020 Apr 27
2
[PATCH v2] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...or
> > + * initialized. If we cannot do that then we should disable
> > + * page reporting as it could potentially change the contents
> > + * of our free pages.
> > + */
> > if (!want_init_on_free() &&
> > (IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
> > !page_poisoning_enabled()))
> > __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
> > + else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
> > + __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
>...
2020 Apr 27
2
[PATCH v2] virtio-balloon: Disable free page reporting if page poison reporting is not enabled
...or
> > + * initialized. If we cannot do that then we should disable
> > + * page reporting as it could potentially change the contents
> > + * of our free pages.
> > + */
> > if (!want_init_on_free() &&
> > (IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
> > !page_poisoning_enabled()))
> > __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
> > + else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON))
> > + __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_REPORTING);
>...
2017 Nov 18
1
[virtio-dev] Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
...> >
> >
> > Thought about it more, I think it would be better to put this logic to
> > virtio_balloon:
> >
> > send_free_page_cmd_id(vb, &vb->start_cmd_id);
> > if (page_poisoning_enabled() &&
> > !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY))
> > walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> > send_free_page_cmd_id(vb, &vb->stop_cmd_id);
> >
> >
> > walk_free_mem_block() should be a more generic API, and this potential
> > page poisoning issue i...
2017 Nov 18
1
[virtio-dev] Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
...> >
> >
> > Thought about it more, I think it would be better to put this logic to
> > virtio_balloon:
> >
> > send_free_page_cmd_id(vb, &vb->start_cmd_id);
> > if (page_poisoning_enabled() &&
> > !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY))
> > walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
> > send_free_page_cmd_id(vb, &vb->stop_cmd_id);
> >
> >
> > walk_free_mem_block() should be a more generic API, and this potential
> > page poisoning issue i...
2017 Nov 29
0
[PATCH v18 10/10] virtio-balloon: don't report free pages when page poisoning is enabled
...ined cmd id to the host with an outbuf */
send_one_desc(vb, vb->free_page_vq, virt_to_phys(&vb->start_cmd_id),
sizeof(uint32_t), false, true, false);
- walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
+ if (!(page_poisoning_enabled() &&
+ !IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY)))
+ walk_free_mem_block(vb, 0, &virtio_balloon_send_free_pages);
/*
* End by sending the stop id to the host with an outbuf. Use the
* non-batching mode here to trigger a kick after adding the stop id.
--
2.7.4
2018 Jan 17
0
[PATCH v22 3/3] virtio-balloon: don't report free pages when page poisoning is enabled
...v->config->get) {
@@ -740,6 +741,13 @@ static int virtballoon_probe(struct virtio_device *vdev)
WQ_FREEZABLE | WQ_CPU_INTENSIVE, 0);
INIT_WORK(&vb->report_free_page_work, report_free_page_func);
vb->stop_cmd_id = VIRTIO_BALLOON_FREE_PAGE_REPORT_STOP_ID;
+ if (IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
+ !page_poisoning_enabled())
+ poison_val = 0;
+ else
+ poison_val = PAGE_POISON;
+ virtio_cwrite(vb->vdev, struct virtio_balloon_config,
+ poison_val, &poison_val);
}
vb->nb.notifier_call = virtballoon_oom_notify;
diff --git a/include/uapi/linux/virtio_bal...
2020 Apr 16
0
[PATCH] virtio-balloon: Disable free page hinting/reporting if page poison is disabled
...--- a/drivers/virtio/virtio_balloon.c
> +++ b/drivers/virtio/virtio_balloon.c
> @@ -1110,8 +1110,12 @@ static int virtballoon_validate(struct virtio_device *vdev)
> /* Tell the host whether we care about poisoned pages. */
> if (!want_init_on_free() &&
> (IS_ENABLED(CONFIG_PAGE_POISONING_NO_SANITY) ||
> - !page_poisoning_enabled()))
> + !page_poisoning_enabled())) {
> __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_PAGE_POISON);
> + } else if (!virtio_has_feature(vdev, VIRTIO_BALLOON_F_PAGE_POISON)) {
> + __virtio_clear_bit(vdev, VIRTIO_BALLOON_F_FREE_PAGE_HINT);
&g...