📞 Call JetBlue Airways Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching JetBlue Airways in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for JetBlue Airways customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via JetBlue Airways official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the JetBlue Airways app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified JetBlue Airways support team—not a mis routed line.
✅ Summary
If you need assistance with your JetBlue Airways travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my JetBlue Airways flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact JetBlue Airways Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact JetBlue Airways Now
For immediate assistance, call JetBlue Airways Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Air Canada Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Air Canada in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Air Canada customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Air Canada official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Air Canada app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Air Canada support team—not a mis routed line.
✅ Summary
If you need assistance with your Air Canada travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Air Canada flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Air Canada Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Air Canada Now
For immediate assistance, call Air Canada Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call China Eastern Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching China Eastern Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for China Eastern Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via China Eastern Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the China Eastern Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified China Eastern Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your China Eastern Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my China Eastern Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact China Eastern Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact China Eastern Airlines Now
For immediate assistance, call China Eastern Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Latam Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Latam Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Latam Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Latam Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Latam Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Latam Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Latam Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Latam Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Latam Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Latam Airlines Now
For immediate assistance, call Latam Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Southwest Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Southwest Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Southwest Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Southwest Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Southwest Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Southwest Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Southwest Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Southwest Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Southwest Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Southwest Airlines Now
For immediate assistance, call Southwest Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Volaris Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Volaris Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Volaris Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Volaris Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Volaris Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Volaris Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Volaris Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Volaris Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Volaris Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Volaris Airlines Now
For immediate assistance, call Volaris Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Allegiant Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Allegiant Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Allegiant Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Allegiant Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Allegiant Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Allegiant Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Allegiant Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Allegiant Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Allegiant Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Allegiant Airlines Now
For immediate assistance, call Allegiant Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Allegiant Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Allegiant Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Allegiant Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Allegiant Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Allegiant Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Allegiant Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Allegiant Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Allegiant Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Allegiant Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Allegiant Airlines Now
For immediate assistance, call Allegiant Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Sun Country Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Sun Country Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Sun Country Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Sun Country Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Sun Country Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Sun Country Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Sun Country Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Sun Country Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Sun Country Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Sun Country Airlines Now
For immediate assistance, call Sun Country Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Alaska Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Alaska Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Alaska Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Alaska Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Alaska Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Alaska Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Alaska Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Alaska Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Alaska Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Alaska Airlines Now
For immediate assistance, call Alaska Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Spirit Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Spirit Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Spirit Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Spirit Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Spirit Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Spirit Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Spirit Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Spirit Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Spirit Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Spirit Airlines Now
For immediate assistance, call Spirit Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Aeromexico Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Aeromexico Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Aeromexico Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Aeromexico Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Aeromexico Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Aeromexico Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Aeromexico Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Aeromexico Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Aeromexico Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Aeromexico Airlines Now
For immediate assistance, call Aeromexico Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Avelo Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Avelo Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Avelo Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Avelo Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Avelo Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Avelo Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Avelo Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Avelo Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Avelo Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Avelo Airlines Now
For immediate assistance, call Avelo Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Contour Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Contour Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Contour Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Contour Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Contour Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Contour Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Contour Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Contour Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Contour Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Contour Airlines Now
For immediate assistance, call Contour Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Condor Airlines Customer Service at +1-866-284-3022 right away if you need assistance—this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Condor Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +1-866-284-3022 as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Condor Airlines customer support in the U.S. is +1-866-284-3022.
You can call +1-866-284-3022 anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +1-866-284-3022 is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Condor Airlines official site.
• One forum lists the hotline as +1-866-284-3022 for U.S. customers.
• Another cites numbers like ++1-866-284-3022 or +1-866-284-3022
• Still others list +1-866-284-3022
Because of this variation, the safest and most reliable number remains +1-866-284-3022 (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +1-866-284-3022, you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +1-866-284-3022.
⏱ Tips to Reach a Live Agent Faster
• Call +1-866-284-3022 during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say “agent” or press “0” to bypass menus and reach a representative.
• Use +1-866-284-3022 for urgent issues; for less urgent ones you can also try live chat or the Condor Airlines app.
• Remain polite and have your details ready—especially when you call +1-866-284-3022, to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +1-866-284-3022 as the primary U.S. customer service number.
Using +1-866-284-3022 ensures you reach the verified Condor Airlines support team—not a mis routed line.
✅ Summary
If you need assistance with your Condor Airlines travel in the U.S., your first call should be to +1-866-284-3022.
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help—day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Condor Airlines flight?
Call 📞 1-866-284-3022 to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Condor Airlines Customer Service at 1-866-284-3022. Our agents will guide you through the cancellation process and initiate your refund according to the airline’s policy.
3. Can I upgrade my seat after booking?
Yes! Call 1-866-284-3022 to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there’s a spelling error or mismatch in your ticket, contact 1-866-284-3022 immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call 1-866-284-3022. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Condor Airlines Now
For immediate assistance, call Condor Airlines Customer Support at 1-866-284-3022.
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations — ensuring a smooth and stress-free travel experience.
📞 Call Frontier Airlines Customer Service at +[SCAMMER] right away if you need assistance--this is the main U.S. line and is available 24/7. 😊
Here is your complete guide to reaching Frontier Airlines in the USA with all the numbers and suggestions to get you helped fast. This guide uses +[SCAMMER] as the primary contact, and I will refer to it several times to make it easy to remember.
📞 Key Contact Number
The go to phone number for Frontier Airlines customer support in the U.S. is +[SCAMMER].
You can call +[SCAMMER] anytime (24 hours a day, 7 days a week) for general customer service, including bookings, flight changes, baggage issues, or refunds.
🧭 Other Contact Options & Numbers
While +[SCAMMER] is the main line, the online travel community lists a variety of numbers that are reported by users. Some of these may be older or unofficial, so use them with caution and always verify via Frontier Airlines official site.
• One forum lists the hotline as +[SCAMMER] for U.S. customers.
• Another cites numbers like ++[SCAMMER] or +[SCAMMER]
• Still others list +[SCAMMER]
Because of this variation, the safest and most reliable number remains +[SCAMMER] (as per official site) when in the U.S.
🎯 What to Use the Call For
When you dial +[SCAMMER], you can ask for help with:
• Flight cancellations or changes
• Refunds or credits
• Baggage delays, lost or damaged items
• Reservation errors or ticketing issues
• Accessibility requests or special services
Having your booking number, flight date, and any relevant reference ready will speed things up when you call +[SCAMMER].
⏱ Tips to Reach a Live Agent Faster
• Call +[SCAMMER] during off peak hours (e.g., early morning or late evening) to avoid long hold times.
• When the automated system starts, say "agent" or press "0" to bypass menus and reach a representative.
• Use +[SCAMMER] for urgent issues; for less urgent ones you can also try live chat or the Frontier Airlines app.
• Remain polite and have your details ready--especially when you call +[SCAMMER], to help the agent assist you efficiently.
🌍 Why Use the Official Number?
Because multiple third party forums list different numbers (e.g., +1 855 xxx xx41, +1 877 xxx xx72, +1 866 xxx xx25), it is easy to get confused. These may be outdated or unofficial. The official site confirms +[SCAMMER] as the primary U.S. customer service number.
Using +[SCAMMER] ensures you reach the verified Frontier Airlines support team--not a mis routed line.
✅ Summary
If you need assistance with your Frontier Airlines travel in the U.S., your first call should be to +[SCAMMER].
Whether it is a last minute change, baggage issue, or booking question, calling +1 866 284 3022 connects you to professional help--day or night. Keep that number handy and you will be ready if any travel hiccup occurs.
❓ Frequently Asked Questions (FAQs)
1. How can I change or rebook my Frontier Airlines flight?
Call 📞 [SCAMMER] to speak with a live agent who can help modify your travel date or destination. Rebooking fees and fare differences may apply depending on your ticket type.
2. How do I cancel my ticket and get a refund?
Contact Frontier Airlines Customer Service at [SCAMMER]. Our agents will guide you through the cancellation process and initiate your refund according to the airline's policy.
3. Can I upgrade my seat after booking?
Yes! Call [SCAMMER] to request seat upgrades, including premium or preferred seating options. Availability depends on the flight and fare class.
4. How can I correct a name on my booking?
If there's a spelling error or mismatch in your ticket, contact [SCAMMER] immediately. Our support team can assist with minor corrections without affecting your booking.
5. How do I add children or infants to my existing booking?
To add kids to a reservation, call [SCAMMER]. The agent will help include infants or children in your booking and provide fare details and seat assignments.
📞 Contact Frontier Airlines Now
For immediate assistance, call Frontier Airlines Customer Support at [SCAMMER].
Our expert agents are available 24/7 to help with bookings, flight changes, cancellations, refunds, seat upgrades, and adding children to your reservations -- ensuring a smooth and stress-free travel experience.
[BUG]
During development of a minor feature (make sure all btrfs_bio::end_io()
is called in task context), I noticed a crash in generic/388, where
metadata writes triggered new works after btrfs_stop_all_workers().
It turns out that it can even happen without any code modification, just
using RAID5 for metadata and the same workload from generic/388 is going
to trigger the use-after-free.
[CAUSE]
If btrfs hits an error, the fs is marked as error, no new
transaction is allowed thus metadata is in a frozen state.
But there are some metadata modification before that error, and they are
still in the btree inode page cache.
Since there will be no real transaction commitment, all those dirty
folios are just kept as is in the page cache, and they can not be
invalidated by invalidate_inode_pages2() call inside close_ctree(),
because they are dirty.
And finally after btrfs_stop_all_workers(), we call iput() on btree
inode, which triggers writeback of those dirty metadata.
And if the fs is using RAID56 metadata, this will trigger RMW and queue
new works into rmw_workers, which is already stopped, causing warning
from queue_work() and use-after-free.
[FIX]
Add a special handling for write_one_eb(), that if the fs is already in
an error state immediately mark the bbio as failure, instead of really
submitting them into the device.
This means for test case like generic/388, at iput() those dirty folios
will just be discarded without triggering IO.
CC: stable(a)vger.kernel.org
Signed-off-by: Qu Wenruo <wqu(a)suse.com>
---
fs/btrfs/disk-io.c | 12 ++++++++++++
fs/btrfs/extent_io.c | 11 +++++++++++
2 files changed, 23 insertions(+)
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 0aa7e5d1b05f..8b0fc2df85f1 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -4402,11 +4402,23 @@ void __cold close_ctree(struct btrfs_fs_info *fs_info)
btrfs_put_block_group_cache(fs_info);
+ /*
+ * If the fs is already in trans aborted case, also trigger writeback of all
+ * dirty metadata folios.
+ * Those folios will not reach disk but dicarded directly.
+ * This is to make sure no dirty folios before iput(), or iput() will
+ * trigger writeback again, and may even cause extra works queued
+ * into workqueue.
+ */
+ if (unlikely(BTRFS_FS_ERROR(fs_info)))
+ filemap_write_and_wait(fs_info->btree_inode->i_mapping);
+
/*
* we must make sure there is not any read request to
* submit after we stopping all workers.
*/
invalidate_inode_pages2(fs_info->btree_inode->i_mapping);
+
btrfs_stop_all_workers(fs_info);
/* We shouldn't have any transaction open at this point */
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index 870584dde575..a8a53409bb3f 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -2246,6 +2246,17 @@ static noinline_for_stack void write_one_eb(struct extent_buffer *eb,
wbc_account_cgroup_owner(wbc, folio, range_len);
folio_unlock(folio);
}
+ /*
+ * If the fs is already in error status, do not submit any writeback
+ * but immediately finish it.
+ * This is to avoid iput() triggering dirty folio writeback for
+ * transaction aborted fses, which can cause extra works into
+ * already stopped workqueues.
+ */
+ if (unlikely(BTRFS_FS_ERROR(fs_info))) {
+ btrfs_bio_end_io(bbio, errno_to_blk_status(-EROFS));
+ return;
+ }
btrfs_submit_bbio(bbio, 0);
}
--
2.51.0
[BUG]
During development of a minor feature (make sure all btrfs_bio::end_io()
is called in task context), I noticed a crash in generic/388, where
metadata writes triggered new works after btrfs_stop_all_workers().
It turns out that it can even happen without any code modification, just
using RAID5 for metadata and the same workload from generic/388 is going
to trigger the use-after-free.
[CAUSE]
If btrfs hits an error, the fs is marked as error, no new
transaction is allowed thus metadata is in a frozen state.
But there are some metadata modifications before that error, and they are
still in the btree inode page cache.
Since there will be no real transaction commit, all those dirty folios
are just kept as is in the page cache, and they can not be invalidated
by invalidate_inode_pages2() call inside close_ctree(), because they are
dirty.
And finally after btrfs_stop_all_workers(), we call iput() on btree
inode, which triggers writeback of those dirty metadata.
And if the fs is using RAID56 metadata, this will trigger RMW and queue
new works into rmw_workers, which is already stopped, causing warning
from queue_work() and use-after-free.
[FIX]
Add a special handling for write_one_eb(), that if the fs is already in
an error state, immediately mark the bbio as failure, instead of really
submitting them.
Then during close_ctree(), iput() will just discard all those dirty
tree blocks without really writing them back, thus no more new jobs for
already stopped-and-freed workqueues.
The extra discard in write_one_eb() also acts as an extra safenet.
E.g. the transaction abort is triggered by some extent/free space
tree corruptions, and since extent/free space tree is already corrupted
some tree blocks may be allocated where they shouldn't be (overwriting
existing tree blocks). In that case writing them back will further
corrupting the fs.
CC: stable(a)vger.kernel.org #6.6
Signed-off-by: Qu Wenruo <wqu(a)suse.com>
---
Changelog
v2:
- Various grammar and newline fixes
- A shorter title line
- Enhance the [FIX] part, explain the full fix
- Limit the backport for 6.6
v6.1 code base is very different compared to the current one, thus
backporting to v6.6 would be the limit.
- Explain more why discarding bios at write_one_eb() is safer
- Remove the extra flushing part inside close_ctree()
There is no difference flushing the dirty folios manually or by
iput(), as dirty folios are discarded anyway, no new job will be
created.
---
fs/btrfs/extent_io.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index 870584dde575..8f6b8baba003 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -2246,6 +2246,14 @@ static noinline_for_stack void write_one_eb(struct extent_buffer *eb,
wbc_account_cgroup_owner(wbc, folio, range_len);
folio_unlock(folio);
}
+ /*
+ * If the fs is already in error status, do not submit any writeback
+ * but immediately finish it.
+ */
+ if (unlikely(BTRFS_FS_ERROR(fs_info))) {
+ btrfs_bio_end_io(bbio, errno_to_blk_status(-EROFS));
+ return;
+ }
btrfs_submit_bbio(bbio, 0);
}
--
2.51.0
An invalid pointer dereference bug was reported on arm64 cpu, and has
not yet been seen on x86. A partial oops looks like:
Call trace:
update_cfs_rq_h_load+0x80/0xb0
wake_affine+0x158/0x168
select_task_rq_fair+0x364/0x3a8
try_to_wake_up+0x154/0x648
wake_up_q+0x68/0xd0
futex_wake_op+0x280/0x4c8
do_futex+0x198/0x1c0
__arm64_sys_futex+0x11c/0x198
Link: https://lore.kernel.org/all/20251013071820.1531295-1-CruzZhao@linux.alibaba…
We found that the task_group corresponding to the problematic se
is not in the parent task_group’s children list, indicating that
h_load_next points to an invalid address. Consider the following
cgroup and task hierarchy:
A
/ \
/ \
B E
/ \ |
/ \ t2
C D
| |
t0 t1
Here follows a timing sequence that may be responsible for triggering
the problem:
CPU X CPU Y CPU Z
wakeup t0
set list A->B->C
traverse A->B->C
t0 exits
destroy C
wakeup t2
set list A->E wakeup t1
set list A->B->D
traverse A->B->C
panic
CPU Z sets ->h_load_next list to A->B->D, but due to arm64 weaker memory
ordering, Y may observe A->B before it sees B->D, then in this time window,
it can traverse A->B->C and reach an invalid se.
We can avoid stale pointer accesses by clearing ->h_load_next when
unregistering cgroup.
Suggested-by: Vincent Guittot <vincent.guittot(a)linaro.org>
Fixes: 685207963be9 ("sched: Move h_load calculation to task_h_load()")
Cc: <stable(a)vger.kernel.org>
Co-developed-by: Cruz Zhao <CruzZhao(a)linux.alibaba.com>
Signed-off-by: Cruz Zhao <CruzZhao(a)linux.alibaba.com>
Signed-off-by: Peng Wang <peng_wang(a)linux.alibaba.com>
---
kernel/sched/fair.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index cee1793e8277..a5fce15093d3 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -13427,6 +13427,14 @@ void unregister_fair_sched_group(struct task_group *tg)
list_del_leaf_cfs_rq(cfs_rq);
}
remove_entity_load_avg(se);
+ /*
+ * Clear parent's h_load_next if it points to the
+ * sched_entity being freed to avoid stale pointer.
+ */
+ struct cfs_rq *parent_cfs_rq = cfs_rq_of(se);
+
+ if (READ_ONCE(parent_cfs_rq->h_load_next) == se)
+ WRITE_ONCE(parent_cfs_rq->h_load_next, NULL);
}
/*
--
2.27.0
On LoongArch system, guest PMU hardware is shared by guest and host
and PMU interrupt is separated. PMU is pass-through to VM, and there is
PMU context switch when exit to host and return to guest.
There is optimiation to check whether PMU is enabled by guest. If not,
it is not necessary to return to guest. However it is enabled, PMU
context for guest need switch on. Now KVM_REQ_PMU notification is set
on vcpu context switch, however it is missing if there is no vcpu context
switch and PMU is used by guest VM.
Fixes: f4e40ea9f78f ("LoongArch: KVM: Add PMU support for guest")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Bibo Mao <maobibo(a)loongson.cn>
---
arch/loongarch/kvm/vcpu.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/arch/loongarch/kvm/vcpu.c b/arch/loongarch/kvm/vcpu.c
index 30e3b089a596..bf56ad29ac15 100644
--- a/arch/loongarch/kvm/vcpu.c
+++ b/arch/loongarch/kvm/vcpu.c
@@ -132,6 +132,9 @@ static void kvm_lose_pmu(struct kvm_vcpu *vcpu)
* Clear KVM_LARCH_PMU if the guest is not using PMU CSRs when
* exiting the guest, so that the next time trap into the guest.
* We don't need to deal with PMU CSRs contexts.
+ *
+ * Otherwise set request bit KVM_REQ_PMU to restore guest PMU
+ * before entering guest VM
*/
val = kvm_read_sw_gcsr(csr, LOONGARCH_CSR_PERFCTRL0);
val |= kvm_read_sw_gcsr(csr, LOONGARCH_CSR_PERFCTRL1);
@@ -139,6 +142,8 @@ static void kvm_lose_pmu(struct kvm_vcpu *vcpu)
val |= kvm_read_sw_gcsr(csr, LOONGARCH_CSR_PERFCTRL3);
if (!(val & KVM_PMU_EVENT_ENABLED))
vcpu->arch.aux_inuse &= ~KVM_LARCH_PMU;
+ else
+ kvm_make_request(KVM_REQ_PMU, vcpu);
kvm_restore_host_pmu(vcpu);
}
--
2.39.3
A few cleanups and a bugfix that are either suitable after the swap
table phase I or found during code review.
Patch 1 is a bugfix and needs to be included in the stable branch,
the rest have no behavior change.
---
Kairui Song (4):
mm, swap: do not perform synchronous discard during allocation
mm, swap: rename helper for setup bad slots
mm, swap: cleanup swap entry allocation parameter
mm/migrate, swap: drop usage of folio_index
include/linux/swap.h | 4 ++--
mm/migrate.c | 4 ++--
mm/shmem.c | 2 +-
mm/swap.h | 21 -----------------
mm/swapfile.c | 64 ++++++++++++++++++++++++++++++++++++----------------
mm/vmscan.c | 4 ++--
6 files changed, 52 insertions(+), 47 deletions(-)
---
base-commit: 53e573001f2b5168f9b65d2b79e9563a3b479c17
change-id: 20251007-swap-clean-after-swap-table-p1-b9a7635ee3fa
Best regards,
--
Kairui Song <kasong(a)tencent.com>
When waiting for the PCIe link to come up, both link up and link down
are valid results depending on the device state.
Since the link may come up later and to get rid of the following
mis-reported PM errors. Do not return an -ETIMEDOUT error, as the
outcome has already been reported in dw_pcie_wait_for_link().
PM error logs introduced by the -ETIMEDOUT error return.
imx6q-pcie 33800000.pcie: Phy link never came up
imx6q-pcie 33800000.pcie: PM: dpm_run_callback(): genpd_resume_noirq returns -110
imx6q-pcie 33800000.pcie: PM: failed to resume noirq: error -110
Cc: stable(a)vger.kernel.org
Fixes: 4774faf854f5 ("PCI: dwc: Implement generic suspend/resume functionality")
Signed-off-by: Richard Zhu <hongxing.zhu(a)nxp.com>
Reviewed-by: Frank Li <Frank.Li(a)nxp.com>
---
drivers/pci/controller/dwc/pcie-designware-host.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
index a4d9838bc33f0..8430ac433d457 100644
--- a/drivers/pci/controller/dwc/pcie-designware-host.c
+++ b/drivers/pci/controller/dwc/pcie-designware-host.c
@@ -1212,10 +1212,9 @@ int dw_pcie_resume_noirq(struct dw_pcie *pci)
if (ret)
return ret;
- ret = dw_pcie_wait_for_link(pci);
- if (ret)
- return ret;
+ /* Ignore errors, the link may come up later */
+ dw_pcie_wait_for_link(pci);
- return ret;
+ return 0;
}
EXPORT_SYMBOL_GPL(dw_pcie_resume_noirq);
--
2.37.1
A chip freeze is observed on i.MX7D when PCIe RC kicks off the PM_PME
message and no devices are connected on the port.
To work aroud such kind of issue, skip PME_Turn_Off message if there is
no endpoint connected.
Cc: stable(a)vger.kernel.org
Fixes: 4774faf854f5 ("PCI: dwc: Implement generic suspend/resume functionality")
Fixes: a528d1a72597 ("PCI: imx6: Use DWC common suspend resume method")
Signed-off-by: Richard Zhu <hongxing.zhu(a)nxp.com>
Reviewed-by: Frank Li <Frank.Li(a)nxp.com>
---
drivers/pci/controller/dwc/pcie-designware-host.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
index 09b50a5ce19bb..a4d9838bc33f0 100644
--- a/drivers/pci/controller/dwc/pcie-designware-host.c
+++ b/drivers/pci/controller/dwc/pcie-designware-host.c
@@ -1136,12 +1136,15 @@ int dw_pcie_suspend_noirq(struct dw_pcie *pci)
if (dw_pcie_readw_dbi(pci, offset + PCI_EXP_LNKCTL) & PCI_EXP_LNKCTL_ASPM_L1)
return 0;
- if (pci->pp.ops->pme_turn_off) {
- pci->pp.ops->pme_turn_off(&pci->pp);
- } else {
- ret = dw_pcie_pme_turn_off(pci);
- if (ret)
- return ret;
+ /* Skip PME_Turn_Off message if there is no endpoint connected */
+ if (dw_pcie_get_ltssm(pci) > DW_PCIE_LTSSM_DETECT_WAIT) {
+ if (pci->pp.ops->pme_turn_off) {
+ pci->pp.ops->pme_turn_off(&pci->pp);
+ } else {
+ ret = dw_pcie_pme_turn_off(pci);
+ if (ret)
+ return ret;
+ }
}
if (dwc_quirk(pci, QUIRK_NOL2POLL_IN_PM)) {
--
2.37.1
Hello,
Status summary for stable/linux-6.6.y
Dashboard:
https://d.kernelci.org/c/stable/linux-6.6.y/4a243110dc884d8e1fe69eecbc2daef…
giturl: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
branch: linux-6.6.y
commit hash: 4a243110dc884d8e1fe69eecbc2daef10d8e75d7
origin: maestro
test start time: 2025-10-23 14:29:15.250000+00:00
Builds: 38 ✅ 0 ❌ 0 ⚠️
Boots: 87 ✅ 0 ❌ 0 ⚠️
Tests: 3955 ✅ 1454 ❌ 1053 ⚠️
### POSSIBLE REGRESSIONS
Hardware: bcm2837-rpi-3-b-plus
> Config: defconfig+lab-setup+kselftest
- Architecture/compiler: arm64/gcc-12
- kselftest.ptrace
last run: https://d.kernelci.org/test/maestro:68fa5f798a79c348aff889c4
history: > ✅ > ❌ > ❌
### FIXED REGRESSIONS
No fixed regressions observed.
### UNSTABLE TESTS
No unstable tests observed.
Sent every day if there were changes in the past 24 hours.
Legend: ✅ PASS ❌ FAIL ⚠️ INCONCLUSIVE
--
This is an experimental report format. Please send feedback in!
Talk to us at kernelci(a)lists.linux.dev
Made with love by the KernelCI team - https://kernelci.org
From: Alexis Lothoré <alexis.lothore(a)bootlin.com>
commit 030ce919e114a111e83b7976ecb3597cefd33f26 upstream.
The stmmac platform drivers that do not open-code the clk_ptp_rate value
after having retrieved the default one from the device-tree can end up
with 0 in clk_ptp_rate (as clk_get_rate can return 0). It will
eventually propagate up to PTP initialization when bringing up the
interface, leading to a divide by 0:
Division by zero in kernel.
CPU: 1 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.30-00001-g48313bd5768a #22
Hardware name: STM32 (Device Tree Support)
Call trace:
unwind_backtrace from show_stack+0x18/0x1c
show_stack from dump_stack_lvl+0x6c/0x8c
dump_stack_lvl from Ldiv0_64+0x8/0x18
Ldiv0_64 from stmmac_init_tstamp_counter+0x190/0x1a4
stmmac_init_tstamp_counter from stmmac_hw_setup+0xc1c/0x111c
stmmac_hw_setup from __stmmac_open+0x18c/0x434
__stmmac_open from stmmac_open+0x3c/0xbc
stmmac_open from __dev_open+0xf4/0x1ac
__dev_open from __dev_change_flags+0x1cc/0x224
__dev_change_flags from dev_change_flags+0x24/0x60
dev_change_flags from ip_auto_config+0x2e8/0x11a0
ip_auto_config from do_one_initcall+0x84/0x33c
do_one_initcall from kernel_init_freeable+0x1b8/0x214
kernel_init_freeable from kernel_init+0x24/0x140
kernel_init from ret_from_fork+0x14/0x28
Exception stack(0xe0815fb0 to 0xe0815ff8)
Prevent this division by 0 by adding an explicit check and error log
about the actual issue. While at it, remove the same check from
stmmac_ptp_register, which then becomes duplicate
Fixes: 19d857c9038e ("stmmac: Fix calculations for ptp counters when clock input = 50Mhz.")
Signed-off-by: Alexis Lothoré <alexis.lothore(a)bootlin.com>
Reviewed-by: Yanteng Si <si.yanteng(a)linux.dev>
Reviewed-by: Maxime Chevallier <maxime.chevallier(a)bootlin.com>
Link: https://patch.msgid.link/20250529-stmmac_tstamp_div-v4-1-d73340a794d5@bootl…
Signed-off-by: Jakub Kicinski <kuba(a)kernel.org>
[ kovalev: bp to fix CVE-2025-38126; the duplicate check removal
in stmmac_ptp_register was skipped (function not present) ]
Signed-off-by: Vasiliy Kovalev <kovalev(a)altlinux.org>
---
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index b8581a711514..d793bcb1b444 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -742,6 +742,11 @@ int stmmac_init_tstamp_counter(struct stmmac_priv *priv, u32 systime_flags)
if (!(priv->dma_cap.time_stamp || priv->dma_cap.atime_stamp))
return -EOPNOTSUPP;
+ if (!priv->plat->clk_ptp_rate) {
+ netdev_err(priv->dev, "Invalid PTP clock rate");
+ return -EINVAL;
+ }
+
stmmac_config_hw_tstamping(priv, priv->ptpaddr, systime_flags);
priv->systime_flags = systime_flags;
--
2.50.1
From: Alexis Lothoré <alexis.lothore(a)bootlin.com>
commit 030ce919e114a111e83b7976ecb3597cefd33f26 upstream.
The stmmac platform drivers that do not open-code the clk_ptp_rate value
after having retrieved the default one from the device-tree can end up
with 0 in clk_ptp_rate (as clk_get_rate can return 0). It will
eventually propagate up to PTP initialization when bringing up the
interface, leading to a divide by 0:
Division by zero in kernel.
CPU: 1 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.30-00001-g48313bd5768a #22
Hardware name: STM32 (Device Tree Support)
Call trace:
unwind_backtrace from show_stack+0x18/0x1c
show_stack from dump_stack_lvl+0x6c/0x8c
dump_stack_lvl from Ldiv0_64+0x8/0x18
Ldiv0_64 from stmmac_init_tstamp_counter+0x190/0x1a4
stmmac_init_tstamp_counter from stmmac_hw_setup+0xc1c/0x111c
stmmac_hw_setup from __stmmac_open+0x18c/0x434
__stmmac_open from stmmac_open+0x3c/0xbc
stmmac_open from __dev_open+0xf4/0x1ac
__dev_open from __dev_change_flags+0x1cc/0x224
__dev_change_flags from dev_change_flags+0x24/0x60
dev_change_flags from ip_auto_config+0x2e8/0x11a0
ip_auto_config from do_one_initcall+0x84/0x33c
do_one_initcall from kernel_init_freeable+0x1b8/0x214
kernel_init_freeable from kernel_init+0x24/0x140
kernel_init from ret_from_fork+0x14/0x28
Exception stack(0xe0815fb0 to 0xe0815ff8)
Prevent this division by 0 by adding an explicit check and error log
about the actual issue. While at it, remove the same check from
stmmac_ptp_register, which then becomes duplicate
Fixes: 19d857c9038e ("stmmac: Fix calculations for ptp counters when clock input = 50Mhz.")
Signed-off-by: Alexis Lothoré <alexis.lothore(a)bootlin.com>
Reviewed-by: Yanteng Si <si.yanteng(a)linux.dev>
Reviewed-by: Maxime Chevallier <maxime.chevallier(a)bootlin.com>
Link: https://patch.msgid.link/20250529-stmmac_tstamp_div-v4-1-d73340a794d5@bootl…
Signed-off-by: Jakub Kicinski <kuba(a)kernel.org>
[ kovalev: bp to fix CVE-2025-38126 ]
Signed-off-by: Vasiliy Kovalev <kovalev(a)altlinux.org>
---
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index 21cc8cd9e023..468aeedf22eb 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -522,7 +522,7 @@ bool stmmac_eee_init(struct stmmac_priv *priv)
static inline u32 stmmac_cdc_adjust(struct stmmac_priv *priv)
{
/* Correct the clk domain crossing(CDC) error */
- if (priv->plat->has_gmac4 && priv->plat->clk_ptp_rate)
+ if (priv->plat->has_gmac4)
return (2 * NSEC_PER_SEC) / priv->plat->clk_ptp_rate;
return 0;
}
@@ -848,6 +848,11 @@ int stmmac_init_tstamp_counter(struct stmmac_priv *priv, u32 systime_flags)
if (!(priv->dma_cap.time_stamp || priv->dma_cap.atime_stamp))
return -EOPNOTSUPP;
+ if (!priv->plat->clk_ptp_rate) {
+ netdev_err(priv->dev, "Invalid PTP clock rate");
+ return -EINVAL;
+ }
+
stmmac_config_hw_tstamping(priv, priv->ptpaddr, systime_flags);
priv->systime_flags = systime_flags;
--
2.50.1
In virtio-net, we have not yet supported multi-buffer XDP packet in
zerocopy mode when there is a binding XDP program. However, in that
case, when receiving multi-buffer XDP packet, we skip the XDP program
and return XDP_PASS. As a result, the packet is passed to normal network
stack which is an incorrect behavior (e.g. a XDP program for packet
count is installed, multi-buffer XDP packet arrives and does go through
XDP program. As a result, the packet count does not increase but the
packet is still received from network stack).This commit instead returns
XDP_ABORTED in that case.
Fixes: 99c861b44eb1 ("virtio_net: xsk: rx: support recv merge mode")
Cc: stable(a)vger.kernel.org
Acked-by: Jason Wang <jasowang(a)redhat.com>
Reviewed-by: Xuan Zhuo <xuanzhuo(a)linux.alibaba.com>
Signed-off-by: Bui Quang Minh <minhquangbui99(a)gmail.com>
---
Changes in v2:
- Return XDP_ABORTED instead of XDP_DROP, make clearer explanation in
commit message
---
drivers/net/virtio_net.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index a757cbcab87f..8e8a179aaa49 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -1379,9 +1379,14 @@ static struct sk_buff *virtnet_receive_xsk_merge(struct net_device *dev, struct
ret = XDP_PASS;
rcu_read_lock();
prog = rcu_dereference(rq->xdp_prog);
- /* TODO: support multi buffer. */
- if (prog && num_buf == 1)
- ret = virtnet_xdp_handler(prog, xdp, dev, xdp_xmit, stats);
+ if (prog) {
+ /* TODO: support multi buffer. */
+ if (num_buf == 1)
+ ret = virtnet_xdp_handler(prog, xdp, dev, xdp_xmit,
+ stats);
+ else
+ ret = XDP_ABORTED;
+ }
rcu_read_unlock();
switch (ret) {
--
2.43.0
From: Alexis Lothoré <alexis.lothore(a)bootlin.com>
commit cbefe2ffa7784525ec5d008ba87c7add19ec631a upstream.
If the ptp_rate recorded earlier in the driver happens to be 0, this
bogus value will propagate up to EST configuration, where it will
trigger a division by 0.
Prevent this division by 0 by adding the corresponding check and error
code.
Suggested-by: Maxime Chevallier <maxime.chevallier(a)bootlin.com>
Signed-off-by: Alexis Lothoré <alexis.lothore(a)bootlin.com>
Fixes: 8572aec3d0dc ("net: stmmac: Add basic EST support for XGMAC")
Link: https://patch.msgid.link/20250529-stmmac_tstamp_div-v4-2-d73340a794d5@bootl…
Signed-off-by: Jakub Kicinski <kuba(a)kernel.org>
[ kovalev: bp to fix CVE-2025-38125;
replaced netdev_warn with pr_warn due to missing dev pointer ]
Signed-off-by: Vasiliy Kovalev <kovalev(a)altlinux.org>
---
drivers/net/ethernet/stmicro/stmmac/dwmac5.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac5.c b/drivers/net/ethernet/stmicro/stmmac/dwmac5.c
index 8fd167501fa0..4df62268f852 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac5.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac5.c
@@ -597,6 +597,11 @@ int dwmac5_est_configure(void __iomem *ioaddr, struct stmmac_est *cfg,
int i, ret = 0x0;
u32 ctrl;
+ if (!ptp_rate) {
+ pr_warn("%s: Invalid PTP rate\n", __func__);
+ return -EINVAL;
+ }
+
ret |= dwmac5_est_write(ioaddr, BTR_LOW, cfg->btr[0], false);
ret |= dwmac5_est_write(ioaddr, BTR_HIGH, cfg->btr[1], false);
ret |= dwmac5_est_write(ioaddr, TER, cfg->ter, false);
--
2.50.1
The patch titled
Subject: ksm: use range-walk function to jump over holes in scan_get_next_rmap_item
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
ksm-use-range-walk-function-to-jump-over-holes-in-scan_get_next_rmap_item.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Pedro Demarchi Gomes <pedrodemargomes(a)gmail.com>
Subject: ksm: use range-walk function to jump over holes in scan_get_next_rmap_item
Date: Wed, 22 Oct 2025 12:30:59 -0300
Currently, scan_get_next_rmap_item() walks every page address in a VMA to
locate mergeable pages. This becomes highly inefficient when scanning
large virtual memory areas that contain mostly unmapped regions, causing
ksmd to use large amount of cpu without deduplicating much pages.
This patch replaces the per-address lookup with a range walk using
walk_page_range(). The range walker allows KSM to skip over entire
unmapped holes in a VMA, avoiding unnecessary lookups. This problem was
previously discussed in [1].
Consider the following test program which creates a 32 TiB mapping in the
virtual address space but only populates a single page:
#include <unistd.h>
#include <stdio.h>
#include <sys/mman.h>
/* 32 TiB */
const size_t size = 32ul * 1024 * 1024 * 1024 * 1024;
int main() {
char *area = mmap(NULL, size, PROT_READ | PROT_WRITE,
MAP_NORESERVE | MAP_PRIVATE | MAP_ANON, -1, 0);
if (area == MAP_FAILED) {
perror("mmap() failed\n");
return -1;
}
/* Populate a single page such that we get an anon_vma. */
*area = 0;
/* Enable KSM. */
madvise(area, size, MADV_MERGEABLE);
pause();
return 0;
}
$ ./ksm-sparse &
$ echo 1 > /sys/kernel/mm/ksm/run
Without this patch ksmd uses 100% of the cpu for a long time (more then 1
hour in my test machine) scanning all the 32 TiB virtual address space
that contain only one mapped page. This makes ksmd essentially deadlocked
not able to deduplicate anything of value. With this patch ksmd walks
only the one mapped page and skips the rest of the 32 TiB virtual address
space, making the scan fast using little cpu.
Link: https://lkml.kernel.org/r/20251023035841.41406-1-pedrodemargomes@gmail.com
Link: https://lkml.kernel.org/r/20251022153059.22763-1-pedrodemargomes@gmail.com
Link: https://lore.kernel.org/linux-mm/423de7a3-1c62-4e72-8e79-19a6413e420c@redha… [1]
Fixes: 31dbd01f3143 ("ksm: Kernel SamePage Merging")
Signed-off-by: Pedro Demarchi Gomes <pedrodemargomes(a)gmail.com>
Co-developed-by: David Hildenbrand <david(a)redhat.com>
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Reported-by: craftfever <craftfever(a)airmail.cc>
Closes: https://lkml.kernel.org/r/020cf8de6e773bb78ba7614ef250129f11a63781@murena.io
Suggested-by: David Hildenbrand <david(a)redhat.com>
Acked-by: David Hildenbrand <david(a)redhat.com>
Cc: Chengming Zhou <chengming.zhou(a)linux.dev>
Cc: xu xin <xu.xin16(a)zte.com.cn>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/ksm.c | 113 ++++++++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 104 insertions(+), 9 deletions(-)
--- a/mm/ksm.c~ksm-use-range-walk-function-to-jump-over-holes-in-scan_get_next_rmap_item
+++ a/mm/ksm.c
@@ -2455,6 +2455,95 @@ static bool should_skip_rmap_item(struct
return true;
}
+struct ksm_next_page_arg {
+ struct folio *folio;
+ struct page *page;
+ unsigned long addr;
+};
+
+static int ksm_next_page_pmd_entry(pmd_t *pmdp, unsigned long addr, unsigned long end,
+ struct mm_walk *walk)
+{
+ struct ksm_next_page_arg *private = walk->private;
+ struct vm_area_struct *vma = walk->vma;
+ pte_t *start_ptep = NULL, *ptep, pte;
+ struct mm_struct *mm = walk->mm;
+ struct folio *folio;
+ struct page *page;
+ spinlock_t *ptl;
+ pmd_t pmd;
+
+ if (ksm_test_exit(mm))
+ return 0;
+
+ cond_resched();
+
+ pmd = pmdp_get_lockless(pmdp);
+ if (!pmd_present(pmd))
+ return 0;
+
+ if (IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE) && pmd_leaf(pmd)) {
+ ptl = pmd_lock(mm, pmdp);
+ pmd = pmdp_get(pmdp);
+
+ if (!pmd_present(pmd)) {
+ goto not_found_unlock;
+ } else if (pmd_leaf(pmd)) {
+ page = vm_normal_page_pmd(vma, addr, pmd);
+ if (!page)
+ goto not_found_unlock;
+ folio = page_folio(page);
+
+ if (folio_is_zone_device(folio) || !folio_test_anon(folio))
+ goto not_found_unlock;
+
+ page += ((addr & (PMD_SIZE - 1)) >> PAGE_SHIFT);
+ goto found_unlock;
+ }
+ spin_unlock(ptl);
+ }
+
+ start_ptep = pte_offset_map_lock(mm, pmdp, addr, &ptl);
+ if (!start_ptep)
+ return 0;
+
+ for (ptep = start_ptep; addr < end; ptep++, addr += PAGE_SIZE) {
+ pte = ptep_get(ptep);
+
+ if (!pte_present(pte))
+ continue;
+
+ page = vm_normal_page(vma, addr, pte);
+ if (!page)
+ continue;
+ folio = page_folio(page);
+
+ if (folio_is_zone_device(folio) || !folio_test_anon(folio))
+ continue;
+ goto found_unlock;
+ }
+
+not_found_unlock:
+ spin_unlock(ptl);
+ if (start_ptep)
+ pte_unmap(start_ptep);
+ return 0;
+found_unlock:
+ folio_get(folio);
+ spin_unlock(ptl);
+ if (start_ptep)
+ pte_unmap(start_ptep);
+ private->page = page;
+ private->folio = folio;
+ private->addr = addr;
+ return 1;
+}
+
+static struct mm_walk_ops ksm_next_page_ops = {
+ .pmd_entry = ksm_next_page_pmd_entry,
+ .walk_lock = PGWALK_RDLOCK,
+};
+
static struct ksm_rmap_item *scan_get_next_rmap_item(struct page **page)
{
struct mm_struct *mm;
@@ -2542,21 +2631,27 @@ next_mm:
ksm_scan.address = vma->vm_end;
while (ksm_scan.address < vma->vm_end) {
+ struct ksm_next_page_arg ksm_next_page_arg;
struct page *tmp_page = NULL;
- struct folio_walk fw;
struct folio *folio;
if (ksm_test_exit(mm))
break;
- folio = folio_walk_start(&fw, vma, ksm_scan.address, 0);
- if (folio) {
- if (!folio_is_zone_device(folio) &&
- folio_test_anon(folio)) {
- folio_get(folio);
- tmp_page = fw.page;
- }
- folio_walk_end(&fw, vma);
+ int found;
+
+ found = walk_page_range_vma(vma, ksm_scan.address,
+ vma->vm_end,
+ &ksm_next_page_ops,
+ &ksm_next_page_arg);
+
+ if (found > 0) {
+ folio = ksm_next_page_arg.folio;
+ tmp_page = ksm_next_page_arg.page;
+ ksm_scan.address = ksm_next_page_arg.addr;
+ } else {
+ VM_WARN_ON_ONCE(found < 0);
+ ksm_scan.address = vma->vm_end - PAGE_SIZE;
}
if (tmp_page) {
_
Patches currently in -mm which might be from pedrodemargomes(a)gmail.com are
ksm-use-range-walk-function-to-jump-over-holes-in-scan_get_next_rmap_item.patch
The patch titled
Subject: mm-shmem-fix-thp-allocation-and-fallback-loop-v3
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
mm-shmem-fix-thp-allocation-and-fallback-loop-v3.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Kairui Song <kasong(a)tencent.com>
Subject: mm-shmem-fix-thp-allocation-and-fallback-loop-v3
Date: Thu, 23 Oct 2025 14:59:13 +0800
introduce a temporary variable to improve code
Link: https://lkml.kernel.org/r/20251023065913.36925-1-ryncsn@gmail.com
Link: https://lore.kernel.org/linux-mm/CAMgjq7DqgAmj25nDUwwu1U2cSGSn8n4-Hqpgotted… [1]
Fixes: e7a2ab7b3bb5d ("mm: shmem: add mTHP support for anonymous shmem")
Signed-off-by: Kairui Song <kasong(a)tencent.com>
Cc: Baolin Wang <baolin.wang(a)linux.alibaba.com>
Cc: Barry Song <baohua(a)kernel.org>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: Dev Jain <dev.jain(a)arm.com>
Cc: Hugh Dickins <hughd(a)google.com>
Cc: Liam Howlett <liam.howlett(a)oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes(a)oracle.com>
Cc: Matthew Wilcox (Oracle) <willy(a)infradead.org>
Cc: Nico Pache <npache(a)redhat.com>
Cc: Ryan Roberts <ryan.roberts(a)arm.com>
Cc: Zi Yan <ziy(a)nvidia.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/shmem.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
--- a/mm/shmem.c~mm-shmem-fix-thp-allocation-and-fallback-loop-v3
+++ a/mm/shmem.c
@@ -1882,6 +1882,7 @@ static struct folio *shmem_alloc_and_add
struct shmem_inode_info *info = SHMEM_I(inode);
unsigned long suitable_orders = 0;
struct folio *folio = NULL;
+ pgoff_t aligned_index;
long pages;
int error, order;
@@ -1895,9 +1896,10 @@ static struct folio *shmem_alloc_and_add
order = highest_order(suitable_orders);
while (suitable_orders) {
pages = 1UL << order;
- folio = shmem_alloc_folio(gfp, order, info, round_down(index, pages));
+ aligned_index = round_down(index, pages);
+ folio = shmem_alloc_folio(gfp, order, info, aligned_index);
if (folio) {
- index = round_down(index, pages);
+ index = aligned_index;
goto allocated;
}
_
Patches currently in -mm which might be from kasong(a)tencent.com are
mm-shmem-fix-thp-allocation-and-fallback-loop.patch
mm-shmem-fix-thp-allocation-and-fallback-loop-v3.patch
mm-swap-do-not-perform-synchronous-discard-during-allocation.patch
mm-swap-rename-helper-for-setup-bad-slots.patch
mm-swap-cleanup-swap-entry-allocation-parameter.patch
mm-migrate-swap-drop-usage-of-folio_index.patch
mm-swap-remove-redundant-argument-for-isolating-a-cluster.patch
The patch titled
Subject: mm, swap: do not perform synchronous discard during allocation
has been added to the -mm mm-new branch. Its filename is
mm-swap-do-not-perform-synchronous-discard-during-allocation.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-new branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Note, mm-new is a provisional staging ground for work-in-progress
patches, and acceptance into mm-new is a notification for others take
notice and to finish up reviews. Please do not hesitate to respond to
review feedback and post updated versions to replace or incrementally
fixup patches in mm-new.
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Kairui Song <kasong(a)tencent.com>
Subject: mm, swap: do not perform synchronous discard during allocation
Date: Fri, 24 Oct 2025 02:34:11 +0800
Patch series "mm, swap: misc cleanup and bugfix", v2.
A few cleanups and a bugfix that are either suitable after the swap table
phase I or found during code review.
Patch 1 is a bugfix and needs to be included in the stable branch, the
rest have no behavioral change.
This patch (of 5):
Since commit 1b7e90020eb77 ("mm, swap: use percpu cluster as allocation
fast path"), swap allocation is protected by a local lock, which means we
can't do any sleeping calls during allocation.
However, the discard routine is not taken well care of. When the swap
allocator failed to find any usable cluster, it would look at the pending
discard cluster and try to issue some blocking discards. It may not
necessarily sleep, but the cond_resched at the bio layer indicates this is
wrong when combined with a local lock. And the bio GFP flag used for
discard bio is also wrong (not atomic).
It's arguable whether this synchronous discard is helpful at all. In most
cases, the async discard is good enough. And the swap allocator is doing
very differently at organizing the clusters since the recent change, so it
is very rare to see discard clusters piling up.
So far, no issues have been observed or reported with typical SSD setups
under months of high pressure. This issue was found during my code
review. But by hacking the kernel a bit: adding a mdelay(500) in the
async discard path, this issue will be observable with WARNING triggered
by the wrong GFP and cond_resched in the bio layer for debug builds.
So now let's apply a hotfix for this issue: remove the synchronous discard
in the swap allocation path. And when order 0 is failing with all cluster
list drained on all swap devices, try to do a discard following the swap
device priority list. If any discards released some cluster, try the
allocation again. This way, we can still avoid OOM due to swap failure if
the hardware is very slow and memory pressure is extremely high.
This may cause more fragmentation issues if the discarding hardware is
really slow. Ideally, we want to discard pending clusters before
continuing to iterate the fragment cluster lists. This can be implemented
in a cleaner way if we clean up the device list iteration part first.
Link: https://lkml.kernel.org/r/20251024-swap-clean-after-swap-table-p1-v2-0-a709…
Link: https://lkml.kernel.org/r/20251024-swap-clean-after-swap-table-p1-v2-1-c5b0…
Fixes: 1b7e90020eb77 ("mm, swap: use percpu cluster as allocation fast path")
Signed-off-by: Kairui Song <kasong(a)tencent.com>
Acked-by: Nhat Pham <nphamcs(a)gmail.com>
Cc: Baolin Wang <baolin.wang(a)linux.alibaba.com>
Cc: Baoquan He <bhe(a)redhat.com>
Cc: Barry Song <baohua(a)kernel.org>
Cc: Chris Li <chrisl(a)kernel.org>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: "Huang, Ying" <ying.huang(a)linux.alibaba.com>
Cc: Kemeng Shi <shikemeng(a)huaweicloud.com>
Cc: Matthew Wilcox (Oracle) <willy(a)infradead.org>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/swapfile.c | 40 +++++++++++++++++++++++++++++++++-------
1 file changed, 33 insertions(+), 7 deletions(-)
--- a/mm/swapfile.c~mm-swap-do-not-perform-synchronous-discard-during-allocation
+++ a/mm/swapfile.c
@@ -1101,13 +1101,6 @@ new_cluster:
goto done;
}
- /*
- * We don't have free cluster but have some clusters in discarding,
- * do discard now and reclaim them.
- */
- if ((si->flags & SWP_PAGE_DISCARD) && swap_do_scheduled_discard(si))
- goto new_cluster;
-
if (order)
goto done;
@@ -1394,6 +1387,33 @@ start_over:
return false;
}
+/*
+ * Discard pending clusters in a synchronized way when under high pressure.
+ * Return: true if any cluster is discarded.
+ */
+static bool swap_sync_discard(void)
+{
+ bool ret = false;
+ int nid = numa_node_id();
+ struct swap_info_struct *si, *next;
+
+ spin_lock(&swap_avail_lock);
+ plist_for_each_entry_safe(si, next, &swap_avail_heads[nid], avail_lists[nid]) {
+ spin_unlock(&swap_avail_lock);
+ if (get_swap_device_info(si)) {
+ if (si->flags & SWP_PAGE_DISCARD)
+ ret = swap_do_scheduled_discard(si);
+ put_swap_device(si);
+ }
+ if (ret)
+ return true;
+ spin_lock(&swap_avail_lock);
+ }
+ spin_unlock(&swap_avail_lock);
+
+ return false;
+}
+
/**
* folio_alloc_swap - allocate swap space for a folio
* @folio: folio we want to move to swap
@@ -1432,11 +1452,17 @@ int folio_alloc_swap(struct folio *folio
}
}
+again:
local_lock(&percpu_swap_cluster.lock);
if (!swap_alloc_fast(&entry, order))
swap_alloc_slow(&entry, order);
local_unlock(&percpu_swap_cluster.lock);
+ if (unlikely(!order && !entry.val)) {
+ if (swap_sync_discard())
+ goto again;
+ }
+
/* Need to call this even if allocation failed, for MEMCG_SWAP_FAIL. */
if (mem_cgroup_try_charge_swap(folio, entry))
goto out_free;
_
Patches currently in -mm which might be from kasong(a)tencent.com are
mm-shmem-fix-thp-allocation-and-fallback-loop.patch
mm-swap-do-not-perform-synchronous-discard-during-allocation.patch
mm-swap-rename-helper-for-setup-bad-slots.patch
mm-swap-cleanup-swap-entry-allocation-parameter.patch
mm-migrate-swap-drop-usage-of-folio_index.patch
mm-swap-remove-redundant-argument-for-isolating-a-cluster.patch
The switch_brightness_work delayed work accesses device->brightness
and device->backlight, which are freed by
acpi_video_dev_unregister_backlight() during device removal.
If the work executes after acpi_video_bus_unregister_backlight()
frees these resources, it causes a use-after-free when
acpi_video_switch_brightness() dereferences device->brightness or
device->backlight.
Fix this by calling cancel_delayed_work_sync() for each device's
switch_brightness_work in acpi_video_bus_remove_notify_handler()
after removing the notify handler that queues the work. This ensures
the work completes before the memory is freed.
Fixes: 8ab58e8e7e097 ("ACPI / video: Fix backlight taking 2 steps on a brightness up/down keypress")
Cc: stable(a)vger.kernel.org
Signed-off-by: Yuhao Jiang <danisjiang(a)gmail.com>
---
Changes in v3:
- Move cancel_delayed_work_sync() to acpi_video_bus_remove_notify_handler()
instead of acpi_video_bus_unregister_backlight() for better logic placement
- Link to v2: https://lore.kernel.org/all/20251022042514.2167599-1-danisjiang@gmail.com/
---
drivers/acpi/acpi_video.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/acpi/acpi_video.c b/drivers/acpi/acpi_video.c
index 103f29661576..be8e7e18abca 100644
--- a/drivers/acpi/acpi_video.c
+++ b/drivers/acpi/acpi_video.c
@@ -1959,8 +1959,10 @@ static void acpi_video_bus_remove_notify_handler(struct acpi_video_bus *video)
struct acpi_video_device *dev;
mutex_lock(&video->device_list_lock);
- list_for_each_entry(dev, &video->video_device_list, entry)
+ list_for_each_entry(dev, &video->video_device_list, entry) {
acpi_video_dev_remove_notify_handler(dev);
+ cancel_delayed_work_sync(&dev->switch_brightness_work);
+ }
mutex_unlock(&video->device_list_lock);
acpi_video_bus_stop_devices(video);
--
2.34.1
The SD current limit logic is updated to avoid explicitly setting the
current limit when the maximum power is 200mA (0.72W) or less, as this
is already the default value. The code now only issues a current limit
switch if a higher limit is required, and the unused
SD_SET_CURRENT_NO_CHANGE constant is removed. This reduces unnecessary
commands and simplifies the logic.
Fixes: 0aa6770000ba ("mmc: sdhci: only set 200mA support for 1.8v if 200mA is available")
Signed-off-by: Avri Altman <avri.altman(a)sandisk.com>
Cc: stable(a)vger.kernel.org
---
drivers/mmc/core/sd.c | 7 ++-----
include/linux/mmc/card.h | 1 -
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/mmc/core/sd.c b/drivers/mmc/core/sd.c
index ec02067f03c5..cf92c5b2059a 100644
--- a/drivers/mmc/core/sd.c
+++ b/drivers/mmc/core/sd.c
@@ -554,7 +554,7 @@ static u32 sd_get_host_max_current(struct mmc_host *host)
static int sd_set_current_limit(struct mmc_card *card, u8 *status)
{
- int current_limit = SD_SET_CURRENT_NO_CHANGE;
+ int current_limit = SD_SET_CURRENT_LIMIT_200;
int err;
u32 max_current;
@@ -598,11 +598,8 @@ static int sd_set_current_limit(struct mmc_card *card, u8 *status)
else if (max_current >= 400 &&
card->sw_caps.sd3_curr_limit & SD_MAX_CURRENT_400)
current_limit = SD_SET_CURRENT_LIMIT_400;
- else if (max_current >= 200 &&
- card->sw_caps.sd3_curr_limit & SD_MAX_CURRENT_200)
- current_limit = SD_SET_CURRENT_LIMIT_200;
- if (current_limit != SD_SET_CURRENT_NO_CHANGE) {
+ if (current_limit != SD_SET_CURRENT_LIMIT_200) {
err = mmc_sd_switch(card, SD_SWITCH_SET, 3,
current_limit, status);
if (err)
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
index ddcdf23d731c..e9e964c20e53 100644
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
@@ -182,7 +182,6 @@ struct sd_switch_caps {
#define SD_SET_CURRENT_LIMIT_400 1
#define SD_SET_CURRENT_LIMIT_600 2
#define SD_SET_CURRENT_LIMIT_800 3
-#define SD_SET_CURRENT_NO_CHANGE (-1)
#define SD_MAX_CURRENT_200 (1 << SD_SET_CURRENT_LIMIT_200)
#define SD_MAX_CURRENT_400 (1 << SD_SET_CURRENT_LIMIT_400)
--
2.25.1
Hi,
We provide custom packaging boxes and labels. We make boxes in
different materials and styles such as Vape Boxe, Cigarette Boxes,
Cartridge Boxes, Cardboard boxes, Rigid Boxes and Mailer boxes, etc.
Our benefits include quick turnaround time, free shipping and design
support. Just send over your box or label specifications and quantity
so I can give you an estimate on that.
Let me know if you have any questions. Thanks
Best Regards
Micah Robert
My Packaging Pro
From: Brian Norris <briannorris(a)google.com>
As the comments in pci_pm_thaw_noirq() suggest, pci_restore_state() may
need to restore MSI-X state in MMIO space. This is only possible if we
reach D0; if we failed to power up, this might produce a fatal error
when touching memory space.
Check for errors (as the "verify" in "pci_pm_power_up_and_verify_state"
implies), and skip restoring if it fails.
This mitigates errors seen during resume_noirq, for example, when the
platform did not resume the link properly.
Cc: stable(a)vger.kernel.org
Signed-off-by: Brian Norris <briannorris(a)google.com>
Signed-off-by: Brian Norris <briannorris(a)chromium.org>
---
drivers/pci/pci-driver.c | 12 +++++++++---
drivers/pci/pci.c | 13 +++++++++++--
drivers/pci/pci.h | 2 +-
3 files changed, 21 insertions(+), 6 deletions(-)
diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
index 302d61783f6c..d66d95bd0ca2 100644
--- a/drivers/pci/pci-driver.c
+++ b/drivers/pci/pci-driver.c
@@ -557,7 +557,13 @@ static void pci_pm_default_resume(struct pci_dev *pci_dev)
static void pci_pm_default_resume_early(struct pci_dev *pci_dev)
{
- pci_pm_power_up_and_verify_state(pci_dev);
+ /*
+ * If we failed to reach D0, we'd better not touch MSI-X state in MMIO
+ * space.
+ */
+ if (pci_pm_power_up_and_verify_state(pci_dev))
+ return;
+
pci_restore_state(pci_dev);
pci_pme_restore(pci_dev);
}
@@ -1101,8 +1107,8 @@ static int pci_pm_thaw_noirq(struct device *dev)
* in case the driver's "freeze" callbacks put it into a low-power
* state.
*/
- pci_pm_power_up_and_verify_state(pci_dev);
- pci_restore_state(pci_dev);
+ if (!pci_pm_power_up_and_verify_state(pci_dev))
+ pci_restore_state(pci_dev);
if (pci_has_legacy_pm_support(pci_dev))
return 0;
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index e698278229f2..c75fec3b094f 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -3144,10 +3144,19 @@ void pci_d3cold_disable(struct pci_dev *dev)
}
EXPORT_SYMBOL_GPL(pci_d3cold_disable);
-void pci_pm_power_up_and_verify_state(struct pci_dev *pci_dev)
+int pci_pm_power_up_and_verify_state(struct pci_dev *pci_dev)
{
- pci_power_up(pci_dev);
+ int ret;
+
+ ret = pci_power_up(pci_dev);
pci_update_current_state(pci_dev, PCI_D0);
+
+ if (ret < 0 && pci_dev->current_state == PCI_D3cold) {
+ dev_err(&pci_dev->dev, "Failed to power up device: %d\n", ret);
+ return ret;
+ }
+
+ return 0;
}
/**
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
index 1c48bc447f58..87ad201417d5 100644
--- a/drivers/pci/pci.h
+++ b/drivers/pci/pci.h
@@ -233,7 +233,7 @@ void pci_dev_adjust_pme(struct pci_dev *dev);
void pci_dev_complete_resume(struct pci_dev *pci_dev);
void pci_config_pm_runtime_get(struct pci_dev *dev);
void pci_config_pm_runtime_put(struct pci_dev *dev);
-void pci_pm_power_up_and_verify_state(struct pci_dev *pci_dev);
+int pci_pm_power_up_and_verify_state(struct pci_dev *pci_dev);
void pci_pm_init(struct pci_dev *dev);
void pci_ea_init(struct pci_dev *dev);
void pci_msi_init(struct pci_dev *dev);
--
2.51.0.rc1.193.gad69d77794-goog
The patch below does not apply to the 6.6-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.6.y
git checkout FETCH_HEAD
git cherry-pick -x 15292f1b4c55a3a7c940dbcb6cb8793871ed3d92
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<stable(a)vger.kernel.org>' --in-reply-to '2025102051-foe-trunks-268f@gregkh' --subject-prefix 'PATCH 6.6.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 15292f1b4c55a3a7c940dbcb6cb8793871ed3d92 Mon Sep 17 00:00:00 2001
From: Babu Moger <babu.moger(a)amd.com>
Date: Fri, 10 Oct 2025 12:08:35 -0500
Subject: [PATCH] x86/resctrl: Fix miscount of bandwidth event when
reactivating previously unavailable RMID
Users can create as many monitoring groups as the number of RMIDs supported
by the hardware. However, on AMD systems, only a limited number of RMIDs
are guaranteed to be actively tracked by the hardware. RMIDs that exceed
this limit are placed in an "Unavailable" state.
When a bandwidth counter is read for such an RMID, the hardware sets
MSR_IA32_QM_CTR.Unavailable (bit 62). When such an RMID starts being tracked
again the hardware counter is reset to zero. MSR_IA32_QM_CTR.Unavailable
remains set on first read after tracking re-starts and is clear on all
subsequent reads as long as the RMID is tracked.
resctrl miscounts the bandwidth events after an RMID transitions from the
"Unavailable" state back to being tracked. This happens because when the
hardware starts counting again after resetting the counter to zero, resctrl
in turn compares the new count against the counter value stored from the
previous time the RMID was tracked.
This results in resctrl computing an event value that is either undercounting
(when new counter is more than stored counter) or a mistaken overflow (when
new counter is less than stored counter).
Reset the stored value (arch_mbm_state::prev_msr) of MSR_IA32_QM_CTR to
zero whenever the RMID is in the "Unavailable" state to ensure accurate
counting after the RMID resets to zero when it starts to be tracked again.
Example scenario that results in mistaken overflow
==================================================
1. The resctrl filesystem is mounted, and a task is assigned to a
monitoring group.
$mount -t resctrl resctrl /sys/fs/resctrl
$mkdir /sys/fs/resctrl/mon_groups/test1/
$echo 1234 > /sys/fs/resctrl/mon_groups/test1/tasks
$cat /sys/fs/resctrl/mon_groups/test1/mon_data/mon_L3_*/mbm_total_bytes
21323 <- Total bytes on domain 0
"Unavailable" <- Total bytes on domain 1
Task is running on domain 0. Counter on domain 1 is "Unavailable".
2. The task runs on domain 0 for a while and then moves to domain 1. The
counter starts incrementing on domain 1.
$cat /sys/fs/resctrl/mon_groups/test1/mon_data/mon_L3_*/mbm_total_bytes
7345357 <- Total bytes on domain 0
4545 <- Total bytes on domain 1
3. At some point, the RMID in domain 0 transitions to the "Unavailable"
state because the task is no longer executing in that domain.
$cat /sys/fs/resctrl/mon_groups/test1/mon_data/mon_L3_*/mbm_total_bytes
"Unavailable" <- Total bytes on domain 0
434341 <- Total bytes on domain 1
4. Since the task continues to migrate between domains, it may eventually
return to domain 0.
$cat /sys/fs/resctrl/mon_groups/test1/mon_data/mon_L3_*/mbm_total_bytes
17592178699059 <- Overflow on domain 0
3232332 <- Total bytes on domain 1
In this case, the RMID on domain 0 transitions from "Unavailable" state to
active state. The hardware sets MSR_IA32_QM_CTR.Unavailable (bit 62) when
the counter is read and begins tracking the RMID counting from 0.
Subsequent reads succeed but return a value smaller than the previously
saved MSR value (7345357). Consequently, the resctrl's overflow logic is
triggered, it compares the previous value (7345357) with the new, smaller
value and incorrectly interprets this as a counter overflow, adding a large
delta.
In reality, this is a false positive: the counter did not overflow but was
simply reset when the RMID transitioned from "Unavailable" back to active
state.
Here is the text from APM [1] available from [2].
"In PQOS Version 2.0 or higher, the MBM hardware will set the U bit on the
first QM_CTR read when it begins tracking an RMID that it was not
previously tracking. The U bit will be zero for all subsequent reads from
that RMID while it is still tracked by the hardware. Therefore, a QM_CTR
read with the U bit set when that RMID is in use by a processor can be
considered 0 when calculating the difference with a subsequent read."
[1] AMD64 Architecture Programmer's Manual Volume 2: System Programming
Publication # 24593 Revision 3.41 section 19.3.3 Monitoring L3 Memory
Bandwidth (MBM).
[ bp: Split commit message into smaller paragraph chunks for better
consumption. ]
Fixes: 4d05bf71f157d ("x86/resctrl: Introduce AMD QOS feature")
Signed-off-by: Babu Moger <babu.moger(a)amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp(a)alien8.de>
Reviewed-by: Reinette Chatre <reinette.chatre(a)intel.com>
Tested-by: Reinette Chatre <reinette.chatre(a)intel.com>
Cc: stable(a)vger.kernel.org # needs adjustments for <= v6.17
Link: https://bugzilla.kernel.org/show_bug.cgi?id=206537 # [2]
diff --git a/arch/x86/kernel/cpu/resctrl/monitor.c b/arch/x86/kernel/cpu/resctrl/monitor.c
index c8945610d455..2cd25a0d4637 100644
--- a/arch/x86/kernel/cpu/resctrl/monitor.c
+++ b/arch/x86/kernel/cpu/resctrl/monitor.c
@@ -242,7 +242,9 @@ int resctrl_arch_rmid_read(struct rdt_resource *r, struct rdt_mon_domain *d,
u32 unused, u32 rmid, enum resctrl_event_id eventid,
u64 *val, void *ignored)
{
+ struct rdt_hw_mon_domain *hw_dom = resctrl_to_arch_mon_dom(d);
int cpu = cpumask_any(&d->hdr.cpu_mask);
+ struct arch_mbm_state *am;
u64 msr_val;
u32 prmid;
int ret;
@@ -251,12 +253,16 @@ int resctrl_arch_rmid_read(struct rdt_resource *r, struct rdt_mon_domain *d,
prmid = logical_rmid_to_physical_rmid(cpu, rmid);
ret = __rmid_read_phys(prmid, eventid, &msr_val);
- if (ret)
- return ret;
- *val = get_corrected_val(r, d, rmid, eventid, msr_val);
+ if (!ret) {
+ *val = get_corrected_val(r, d, rmid, eventid, msr_val);
+ } else if (ret == -EINVAL) {
+ am = get_arch_mbm_state(hw_dom, rmid, eventid);
+ if (am)
+ am->prev_msr = 0;
+ }
- return 0;
+ return ret;
}
static int __cntr_id_read(u32 cntr_id, u64 *val)
Evaluaciones Psicométricas para RR.HH.
body {
margin: 0;
padding: 0;
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
color: #333;
background-color: #ffffff;
}
table {
border-spacing: 0;
width: 100%;
max-width: 600px;
margin: auto;
}
td {
padding: 12px 20px;
}
a {
color: #1a73e8;
text-decoration: none;
}
.footer {
font-size: 12px;
color: #888888;
text-align: center;
}
Mejora tus procesos de selección con evaluaciones psicométricas fáciles y confiables.
Hola, ,
Sabemos que encontrar al candidato ideal va más allá del currículum. Por eso quiero contarte brevemente sobre PsicoSmart, una plataforma que ayuda a equipos de RR.HH. a evaluar talento con pruebas psicométricas rápidas, confiables y fáciles de aplicar.
Con PsicoSmart puedes:
Aplicar evaluaciones psicométricas 100% en línea.
Elegir entre más de 31 pruebas psicométricas
Generar reportes automáticos, visuales y fáciles de interpretar.
Comparar resultados entre candidatos en segundos.
Ahorrar horas valiosas del proceso de selección.
Si estás buscando mejorar tus contrataciones, te lo recomiendo muchísimo. Si quieres conocer más puedes responder este correo o simplemente contactarme, mis datos están abajo.
Saludos,
-----------------------------
Atte.: Valeria Pérez
Ciudad de México: (55) 5018 0565
WhatsApp: +52 33 1607 2089
Si no deseas recibir más correos, haz clic aquí para darte de baja.
Para remover su dirección de esta lista haga <a href="https://s1.arrobamail.com/unsuscribe.php?id=yiwtsrewispptseup">click aquí</a>
On Thu, Oct 23, 2025 at 11:25:53AM -0400, Sasha Levin wrote:
> This is a note to let you know that I've just added the patch titled
>
> binfmt_elf: preserve original ELF e_flags for core dumps
>
> to the 6.12-stable tree which can be found at:
> http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=sum…
>
> The filename of the patch is:
> binfmt_elf-preserve-original-elf-e_flags-for-core-du.patch
> and it can be found in the queue-6.12 subdirectory.
>
> If you, or anyone else, feels it should not be added to the stable tree,
> please let <stable(a)vger.kernel.org> know about it.
No, please don't. I already asked that this not be auto-backported:
https://lore.kernel.org/all/202510020856.736F028D@keescook/
--
Kees Cook
Since commit 4959aebba8c0 ("virtio-net: use mtu size as buffer length
for big packets"), when guest gso is off, the allocated size for big
packets is not MAX_SKB_FRAGS * PAGE_SIZE anymore but depends on
negotiated MTU. The number of allocated frags for big packets is stored
in vi->big_packets_num_skbfrags.
Because the host announced buffer length can be malicious (e.g. the host
vhost_net driver's get_rx_bufs is modified to announce incorrect
length), we need a check in virtio_net receive path. Currently, the
check is not adapted to the new change which can lead to NULL page
pointer dereference in the below while loop when receiving length that
is larger than the allocated one.
This commit fixes the received length check corresponding to the new
change.
Fixes: 4959aebba8c0 ("virtio-net: use mtu size as buffer length for big packets")
Cc: stable(a)vger.kernel.org
Signed-off-by: Bui Quang Minh <minhquangbui99(a)gmail.com>
---
Changes in v4:
- Remove unrelated changes, add more comments
Changes in v3:
- Convert BUG_ON to WARN_ON_ONCE
Changes in v2:
- Remove incorrect give_pages call
---
drivers/net/virtio_net.c | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index a757cbcab87f..0ffe78b3fd8d 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -852,7 +852,7 @@ static struct sk_buff *page_to_skb(struct virtnet_info *vi,
{
struct sk_buff *skb;
struct virtio_net_common_hdr *hdr;
- unsigned int copy, hdr_len, hdr_padded_len;
+ unsigned int copy, hdr_len, hdr_padded_len, max_remaining_len;
struct page *page_to_free = NULL;
int tailroom, shinfo_size;
char *p, *hdr_p, *buf;
@@ -915,13 +915,23 @@ static struct sk_buff *page_to_skb(struct virtnet_info *vi,
* This is here to handle cases when the device erroneously
* tries to receive more than is possible. This is usually
* the case of a broken device.
+ *
+ * The number of allocated pages for big packet is
+ * vi->big_packets_num_skbfrags + 1, the start of first page is
+ * for virtio header, the remaining is for data. We need to ensure
+ * the remaining len does not go out of the allocated pages.
+ * Please refer to add_recvbuf_big for more details on big packet
+ * buffer allocation.
*/
- if (unlikely(len > MAX_SKB_FRAGS * PAGE_SIZE)) {
+ BUG_ON(offset >= PAGE_SIZE);
+ max_remaining_len = (unsigned int)PAGE_SIZE - offset;
+ max_remaining_len += vi->big_packets_num_skbfrags * PAGE_SIZE;
+ if (unlikely(len > max_remaining_len)) {
net_dbg_ratelimited("%s: too much data\n", skb->dev->name);
dev_kfree_skb(skb);
return NULL;
}
- BUG_ON(offset >= PAGE_SIZE);
+
while (len) {
unsigned int frag_size = min((unsigned)PAGE_SIZE - offset, len);
skb_add_rx_frag(skb, skb_shinfo(skb)->nr_frags, page, offset,
--
2.43.0
When GSO tunnel is negotiated virtio_net_hdr_tnl_from_skb() tries to
initialize the tunnel metadata but forget to zero unused rxhash
fields. This may leak information to another side. Fixing this by
zeroing the unused hash fields.
Acked-by: Michael S. Tsirkin <mst(a)redhat.com>
Fixes: a2fb4bc4e2a6a ("net: implement virtio helpers to handle UDP GSO tunneling")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Jason Wang <jasowang(a)redhat.com>
---
include/linux/virtio_net.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/include/linux/virtio_net.h b/include/linux/virtio_net.h
index 20e0584db1dd..4d1780848d0e 100644
--- a/include/linux/virtio_net.h
+++ b/include/linux/virtio_net.h
@@ -401,6 +401,10 @@ virtio_net_hdr_tnl_from_skb(const struct sk_buff *skb,
if (!tnl_hdr_negotiated)
return -EINVAL;
+ vhdr->hash_hdr.hash_value = 0;
+ vhdr->hash_hdr.hash_report = 0;
+ vhdr->hash_hdr.padding = 0;
+
/* Let the basic parsing deal with plain GSO features. */
skb_shinfo(skb)->gso_type &= ~tnl_gso_type;
ret = virtio_net_hdr_from_skb(skb, hdr, true, false, vlan_hlen);
--
2.42.0
vb2_ioctl_remove_bufs() call manipulates queue internal buffer list,
potentially overwriting some pointers used by the legacy fileio access
mode. Forbid that ioctl when fileio is active to protect internal queue
state between subsequent read/write calls.
CC: stable(a)vger.kernel.org
Fixes: a3293a85381e ("media: v4l2: Add REMOVE_BUFS ioctl")
Reported-by: Shuangpeng Bai <SJB7183(a)psu.edu>
Signed-off-by: Marek Szyprowski <m.szyprowski(a)samsung.com>
---
v4:
- got back to simple vb2_fileio_is_active() check as in v1, as relying on
vb2_verify_memory_type() misses some corner cases important to v4l2
compliance
v3: https://lore.kernel.org/all/20251023113052.1303082-1-m.szyprowski@samsung.c…
- moved vb2_verify_memory_type() check after (d->count == 0) check to pass v4l2
compliance
v2: https://lore.kernel.org/all/20251020160121.1985354-1-m.szyprowski@samsung.c…
- dropped a change to vb2_ioctl_create_bufs(), as it is already handled
by the vb2_verify_memory_type() call
- replaced queue->type check in vb2_ioctl_remove_bufs() by a call to
vb2_verify_memory_type() which covers all cases
v1: https://lore.kernel.org/all/20251016111154.993949-1-m.szyprowski@samsung.co…
---
drivers/media/common/videobuf2/videobuf2-v4l2.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
index d911021c1bb0..83862d57b126 100644
--- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
+++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
@@ -1010,6 +1010,11 @@ int vb2_ioctl_remove_bufs(struct file *file, void *priv,
if (vb2_queue_is_busy(vdev->queue, file))
return -EBUSY;
+ if (vb2_fileio_is_active(vdev->queue)) {
+ dprintk(vdev->queue, 1, "file io in progress\n");
+ return -EBUSY;
+ }
+
return vb2_core_remove_bufs(vdev->queue, d->index, d->count);
}
EXPORT_SYMBOL_GPL(vb2_ioctl_remove_bufs);
--
2.34.1
From: Stefano Garzarella <sgarzare(a)redhat.com>
Syzbot reported a potential lock inversion deadlock between
vsock_register_mutex and sk_lock-AF_VSOCK when vsock_linger() is called.
The issue was introduced by commit 687aa0c5581b ("vsock: Fix
transport_* TOCTOU") which added vsock_register_mutex locking in
vsock_assign_transport() around the transport->release() call, that can
call vsock_linger(). vsock_assign_transport() can be called with sk_lock
held. vsock_linger() calls sk_wait_event() that temporarily releases and
re-acquires sk_lock. During this window, if another thread hold
vsock_register_mutex while trying to acquire sk_lock, a circular
dependency is created.
Fix this by releasing vsock_register_mutex before calling
transport->release() and vsock_deassign_transport(). This is safe
because we don't need to hold vsock_register_mutex while releasing the
old transport, and we ensure the new transport won't disappear by
obtaining a module reference first via try_module_get().
Reported-by: syzbot+10e35716f8e4929681fa(a)syzkaller.appspotmail.com
Tested-by: syzbot+10e35716f8e4929681fa(a)syzkaller.appspotmail.com
Fixes: 687aa0c5581b ("vsock: Fix transport_* TOCTOU")
Cc: mhal(a)rbox.co
Cc: stable(a)vger.kernel.org
Signed-off-by: Stefano Garzarella <sgarzare(a)redhat.com>
---
net/vmw_vsock/af_vsock.c | 38 +++++++++++++++++++-------------------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c
index 4c2db6cca557..76763247a377 100644
--- a/net/vmw_vsock/af_vsock.c
+++ b/net/vmw_vsock/af_vsock.c
@@ -487,12 +487,26 @@ int vsock_assign_transport(struct vsock_sock *vsk, struct vsock_sock *psk)
goto err;
}
- if (vsk->transport) {
- if (vsk->transport == new_transport) {
- ret = 0;
- goto err;
- }
+ if (vsk->transport && vsk->transport == new_transport) {
+ ret = 0;
+ goto err;
+ }
+ /* We increase the module refcnt to prevent the transport unloading
+ * while there are open sockets assigned to it.
+ */
+ if (!new_transport || !try_module_get(new_transport->module)) {
+ ret = -ENODEV;
+ goto err;
+ }
+
+ /* It's safe to release the mutex after a successful try_module_get().
+ * Whichever transport `new_transport` points at, it won't go away until
+ * the last module_put() below or in vsock_deassign_transport().
+ */
+ mutex_unlock(&vsock_register_mutex);
+
+ if (vsk->transport) {
/* transport->release() must be called with sock lock acquired.
* This path can only be taken during vsock_connect(), where we
* have already held the sock lock. In the other cases, this
@@ -512,20 +526,6 @@ int vsock_assign_transport(struct vsock_sock *vsk, struct vsock_sock *psk)
vsk->peer_shutdown = 0;
}
- /* We increase the module refcnt to prevent the transport unloading
- * while there are open sockets assigned to it.
- */
- if (!new_transport || !try_module_get(new_transport->module)) {
- ret = -ENODEV;
- goto err;
- }
-
- /* It's safe to release the mutex after a successful try_module_get().
- * Whichever transport `new_transport` points at, it won't go away until
- * the last module_put() below or in vsock_deassign_transport().
- */
- mutex_unlock(&vsock_register_mutex);
-
if (sk->sk_type == SOCK_SEQPACKET) {
if (!new_transport->seqpacket_allow ||
!new_transport->seqpacket_allow(remote_cid)) {
--
2.51.0
From: Johannes Berg <johannes.berg(a)intel.com>
commit eb29b4ffafb20281624dcd2cbb768d6f30edf600 upstream.
The order of actions taken for debug was implemented incorrectly.
Now we implemented the dump split and do the FW reset only in the
middle of the dump (rather than the FW killing itself on error.)
As a result, some of the actions taken when applying the config
will now crash the device, so we need to fix the order.
Fixes: 1a5daead217c ("iwlwifi: yoyo: support for ROM usniffer")
Fixes: f21baf244112 ("iwlwifi: yoyo: fw debug config from context info and preset")
Signed-off-by: Johannes Berg <johannes.berg(a)intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit(a)intel.com>
Link: https://patch.msgid.link/20250308231427.6de7fa8e63ed.I40632c48e2a67a8aca05d…
Signed-off-by: Johannes Berg <johannes.berg(a)intel.com>
[ kovalev: bp to fix CVE-2025-38045; added Fixes tags ]
Signed-off-by: Vasiliy Kovalev <kovalev(a)altlinux.org>
---
drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c b/drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
index ab80c79e35bc..d6d9f60839db 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
/*
- * Copyright (C) 2018-2022 Intel Corporation
+ * Copyright (C) 2018-2025 Intel Corporation
*/
#include <linux/firmware.h>
#include "iwl-drv.h"
@@ -1363,15 +1363,15 @@ void _iwl_dbg_tlv_time_point(struct iwl_fw_runtime *fwrt,
switch (tp_id) {
case IWL_FW_INI_TIME_POINT_EARLY:
iwl_dbg_tlv_init_cfg(fwrt);
- iwl_dbg_tlv_apply_config(fwrt, conf_list);
iwl_dbg_tlv_update_drams(fwrt);
iwl_dbg_tlv_tp_trigger(fwrt, sync, trig_list, tp_data, NULL);
+ iwl_dbg_tlv_apply_config(fwrt, conf_list);
break;
case IWL_FW_INI_TIME_POINT_AFTER_ALIVE:
iwl_dbg_tlv_apply_buffers(fwrt);
iwl_dbg_tlv_send_hcmds(fwrt, hcmd_list);
- iwl_dbg_tlv_apply_config(fwrt, conf_list);
iwl_dbg_tlv_tp_trigger(fwrt, sync, trig_list, tp_data, NULL);
+ iwl_dbg_tlv_apply_config(fwrt, conf_list);
break;
case IWL_FW_INI_TIME_POINT_PERIODIC:
iwl_dbg_tlv_set_periodic_trigs(fwrt);
@@ -1381,14 +1381,14 @@ void _iwl_dbg_tlv_time_point(struct iwl_fw_runtime *fwrt,
case IWL_FW_INI_TIME_POINT_MISSED_BEACONS:
case IWL_FW_INI_TIME_POINT_FW_DHC_NOTIFICATION:
iwl_dbg_tlv_send_hcmds(fwrt, hcmd_list);
- iwl_dbg_tlv_apply_config(fwrt, conf_list);
iwl_dbg_tlv_tp_trigger(fwrt, sync, trig_list, tp_data,
iwl_dbg_tlv_check_fw_pkt);
+ iwl_dbg_tlv_apply_config(fwrt, conf_list);
break;
default:
iwl_dbg_tlv_send_hcmds(fwrt, hcmd_list);
- iwl_dbg_tlv_apply_config(fwrt, conf_list);
iwl_dbg_tlv_tp_trigger(fwrt, sync, trig_list, tp_data, NULL);
+ iwl_dbg_tlv_apply_config(fwrt, conf_list);
break;
}
}
--
2.50.1
Hi,
After a stable kernel update, the hwclock command seems no longer
functional on my SPARC system with an ST M48T59Y-70PC1 RTC:
# hwclock
[...long delay...]
hwclock: select() to /dev/rtc0 to wait for clock tick timed out
On prior kernels, there is no problem:
# hwclock
2025-10-22 22:21:04.806992-04:00
I reproduced the same failure on 6.18-rc2 and bisected to this commit:
commit 795cda8338eab036013314dbc0b04aae728880ab
Author: Esben Haabendal <esben(a)geanix.com>
Date: Fri May 16 09:23:35 2025 +0200
rtc: interface: Fix long-standing race when setting alarm
This commit was backported to all current 6.x stable branches,
as well as 5.15.x, so they all have the same regression.
Reverting this commit on top of 6.18-rc2 corrects the problem.
Let me know if you need any more info!
Thanks,
Nick
From: Christian Hitz <christian.hitz(a)bbv.ch>
led_banks contains LED module number(s) that should be grouped into the
module bank. led_banks is 0-initialized.
By checking the led_banks entries for 0, un-set entries are detected.
But a 0-entry also indicates that LED module 0 should be grouped into the
module bank.
By only iterating over the available entries no check for unused entries
is required and LED module 0 can be added to bank.
Signed-off-by: Christian Hitz <christian.hitz(a)bbv.ch>
Cc: stable(a)vger.kernel.org
---
drivers/leds/leds-lp50xx.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/drivers/leds/leds-lp50xx.c b/drivers/leds/leds-lp50xx.c
index 94f8ef6b482c..d50c7f3e8f99 100644
--- a/drivers/leds/leds-lp50xx.c
+++ b/drivers/leds/leds-lp50xx.c
@@ -341,17 +341,15 @@ static int lp50xx_brightness_set(struct led_classdev *cdev,
return ret;
}
-static int lp50xx_set_banks(struct lp50xx *priv, u32 led_banks[])
+static int lp50xx_set_banks(struct lp50xx *priv, u32 led_banks[], int num_leds)
{
u8 led_config_lo, led_config_hi;
u32 bank_enable_mask = 0;
int ret;
int i;
- for (i = 0; i < priv->chip_info->max_modules; i++) {
- if (led_banks[i])
- bank_enable_mask |= (1 << led_banks[i]);
- }
+ for (i = 0; i < num_leds; i++)
+ bank_enable_mask |= (1 << led_banks[i]);
led_config_lo = bank_enable_mask;
led_config_hi = bank_enable_mask >> 8;
@@ -405,7 +403,7 @@ static int lp50xx_probe_leds(struct fwnode_handle *child, struct lp50xx *priv,
return ret;
}
- ret = lp50xx_set_banks(priv, led_banks);
+ ret = lp50xx_set_banks(priv, led_banks, num_leds);
if (ret) {
dev_err(priv->dev, "Cannot setup banked LEDs\n");
return ret;
--
2.51.0
The patch below does not apply to the 6.1-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.1.y
git checkout FETCH_HEAD
git cherry-pick -x 9daa5a8795865f9a3c93d8d1066785b07ded6073
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<stable(a)vger.kernel.org>' --in-reply-to '2025101905-removal-wistful-dd49@gregkh' --subject-prefix 'PATCH 6.1.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 9daa5a8795865f9a3c93d8d1066785b07ded6073 Mon Sep 17 00:00:00 2001
From: Vineeth Vijayan <vneethv(a)linux.ibm.com>
Date: Wed, 1 Oct 2025 15:38:17 +0200
Subject: [PATCH] s390/cio: Update purge function to unregister the unused
subchannels
Starting with 'commit 2297791c92d0 ("s390/cio: dont unregister
subchannel from child-drivers")', cio no longer unregisters
subchannels when the attached device is invalid or unavailable.
As an unintended side-effect, the cio_ignore purge function no longer
removes subchannels for devices on the cio_ignore list if no CCW device
is attached. This situation occurs when a CCW device is non-operational
or unavailable
To ensure the same outcome of the purge function as when the
current cio_ignore list had been active during boot, update the purge
function to remove I/O subchannels without working CCW devices if the
associated device number is found on the cio_ignore list.
Fixes: 2297791c92d0 ("s390/cio: dont unregister subchannel from child-drivers")
Suggested-by: Peter Oberparleiter <oberpar(a)linux.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar(a)linux.ibm.com>
Signed-off-by: Vineeth Vijayan <vneethv(a)linux.ibm.com>
Signed-off-by: Heiko Carstens <hca(a)linux.ibm.com>
diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index fb2c07cb4d3d..4b2dae6eb376 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -1316,23 +1316,34 @@ void ccw_device_schedule_recovery(void)
spin_unlock_irqrestore(&recovery_lock, flags);
}
-static int purge_fn(struct device *dev, void *data)
+static int purge_fn(struct subchannel *sch, void *data)
{
- struct ccw_device *cdev = to_ccwdev(dev);
- struct ccw_dev_id *id = &cdev->private->dev_id;
- struct subchannel *sch = to_subchannel(cdev->dev.parent);
+ struct ccw_device *cdev;
- spin_lock_irq(cdev->ccwlock);
- if (is_blacklisted(id->ssid, id->devno) &&
- (cdev->private->state == DEV_STATE_OFFLINE) &&
- (atomic_cmpxchg(&cdev->private->onoff, 0, 1) == 0)) {
- CIO_MSG_EVENT(3, "ccw: purging 0.%x.%04x\n", id->ssid,
- id->devno);
+ spin_lock_irq(&sch->lock);
+ if (sch->st != SUBCHANNEL_TYPE_IO || !sch->schib.pmcw.dnv)
+ goto unlock;
+
+ if (!is_blacklisted(sch->schid.ssid, sch->schib.pmcw.dev))
+ goto unlock;
+
+ cdev = sch_get_cdev(sch);
+ if (cdev) {
+ if (cdev->private->state != DEV_STATE_OFFLINE)
+ goto unlock;
+
+ if (atomic_cmpxchg(&cdev->private->onoff, 0, 1) != 0)
+ goto unlock;
ccw_device_sched_todo(cdev, CDEV_TODO_UNREG);
- css_sched_sch_todo(sch, SCH_TODO_UNREG);
atomic_set(&cdev->private->onoff, 0);
}
- spin_unlock_irq(cdev->ccwlock);
+
+ css_sched_sch_todo(sch, SCH_TODO_UNREG);
+ CIO_MSG_EVENT(3, "ccw: purging 0.%x.%04x%s\n", sch->schid.ssid,
+ sch->schib.pmcw.dev, cdev ? "" : " (no cdev)");
+
+unlock:
+ spin_unlock_irq(&sch->lock);
/* Abort loop in case of pending signal. */
if (signal_pending(current))
return -EINTR;
@@ -1348,7 +1359,7 @@ static int purge_fn(struct device *dev, void *data)
int ccw_purge_blacklisted(void)
{
CIO_MSG_EVENT(2, "ccw: purging blacklisted devices\n");
- bus_for_each_dev(&ccw_bus_type, NULL, NULL, purge_fn);
+ for_each_subchannel_staged(purge_fn, NULL, NULL);
return 0;
}
The patch below does not apply to the 5.15-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.15.y
git checkout FETCH_HEAD
git cherry-pick -x 9daa5a8795865f9a3c93d8d1066785b07ded6073
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<stable(a)vger.kernel.org>' --in-reply-to '2025101905-depress-banjo-bc7e@gregkh' --subject-prefix 'PATCH 5.15.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 9daa5a8795865f9a3c93d8d1066785b07ded6073 Mon Sep 17 00:00:00 2001
From: Vineeth Vijayan <vneethv(a)linux.ibm.com>
Date: Wed, 1 Oct 2025 15:38:17 +0200
Subject: [PATCH] s390/cio: Update purge function to unregister the unused
subchannels
Starting with 'commit 2297791c92d0 ("s390/cio: dont unregister
subchannel from child-drivers")', cio no longer unregisters
subchannels when the attached device is invalid or unavailable.
As an unintended side-effect, the cio_ignore purge function no longer
removes subchannels for devices on the cio_ignore list if no CCW device
is attached. This situation occurs when a CCW device is non-operational
or unavailable
To ensure the same outcome of the purge function as when the
current cio_ignore list had been active during boot, update the purge
function to remove I/O subchannels without working CCW devices if the
associated device number is found on the cio_ignore list.
Fixes: 2297791c92d0 ("s390/cio: dont unregister subchannel from child-drivers")
Suggested-by: Peter Oberparleiter <oberpar(a)linux.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar(a)linux.ibm.com>
Signed-off-by: Vineeth Vijayan <vneethv(a)linux.ibm.com>
Signed-off-by: Heiko Carstens <hca(a)linux.ibm.com>
diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index fb2c07cb4d3d..4b2dae6eb376 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -1316,23 +1316,34 @@ void ccw_device_schedule_recovery(void)
spin_unlock_irqrestore(&recovery_lock, flags);
}
-static int purge_fn(struct device *dev, void *data)
+static int purge_fn(struct subchannel *sch, void *data)
{
- struct ccw_device *cdev = to_ccwdev(dev);
- struct ccw_dev_id *id = &cdev->private->dev_id;
- struct subchannel *sch = to_subchannel(cdev->dev.parent);
+ struct ccw_device *cdev;
- spin_lock_irq(cdev->ccwlock);
- if (is_blacklisted(id->ssid, id->devno) &&
- (cdev->private->state == DEV_STATE_OFFLINE) &&
- (atomic_cmpxchg(&cdev->private->onoff, 0, 1) == 0)) {
- CIO_MSG_EVENT(3, "ccw: purging 0.%x.%04x\n", id->ssid,
- id->devno);
+ spin_lock_irq(&sch->lock);
+ if (sch->st != SUBCHANNEL_TYPE_IO || !sch->schib.pmcw.dnv)
+ goto unlock;
+
+ if (!is_blacklisted(sch->schid.ssid, sch->schib.pmcw.dev))
+ goto unlock;
+
+ cdev = sch_get_cdev(sch);
+ if (cdev) {
+ if (cdev->private->state != DEV_STATE_OFFLINE)
+ goto unlock;
+
+ if (atomic_cmpxchg(&cdev->private->onoff, 0, 1) != 0)
+ goto unlock;
ccw_device_sched_todo(cdev, CDEV_TODO_UNREG);
- css_sched_sch_todo(sch, SCH_TODO_UNREG);
atomic_set(&cdev->private->onoff, 0);
}
- spin_unlock_irq(cdev->ccwlock);
+
+ css_sched_sch_todo(sch, SCH_TODO_UNREG);
+ CIO_MSG_EVENT(3, "ccw: purging 0.%x.%04x%s\n", sch->schid.ssid,
+ sch->schib.pmcw.dev, cdev ? "" : " (no cdev)");
+
+unlock:
+ spin_unlock_irq(&sch->lock);
/* Abort loop in case of pending signal. */
if (signal_pending(current))
return -EINTR;
@@ -1348,7 +1359,7 @@ static int purge_fn(struct device *dev, void *data)
int ccw_purge_blacklisted(void)
{
CIO_MSG_EVENT(2, "ccw: purging blacklisted devices\n");
- bus_for_each_dev(&ccw_bus_type, NULL, NULL, purge_fn);
+ for_each_subchannel_staged(purge_fn, NULL, NULL);
return 0;
}
The RFCOMM driver confuses the local and remote modem control signals,
which specifically means that the reported DTR and RTS state will
instead reflect the remote end (i.e. DSR and CTS).
This issue dates back to the original driver (and a follow-on update)
merged in 2002, which resulted in a non-standard implementation of
TIOCMSET that allowed controlling also the TS07.10 IC and DV signals by
mapping them to the RI and DCD input flags, while TIOCMGET failed to
return the actual state of DTR and RTS.
Note that the bogus control of input signals in tiocmset() is just
dead code as those flags will have been masked out by the tty layer
since 2003.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Cc: stable(a)vger.kernel.org
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
net/bluetooth/rfcomm/tty.c | 25 ++++++++++---------------
1 file changed, 10 insertions(+), 15 deletions(-)
diff --git a/net/bluetooth/rfcomm/tty.c b/net/bluetooth/rfcomm/tty.c
index 376ce6de84be..f20f043cc9b5 100644
--- a/net/bluetooth/rfcomm/tty.c
+++ b/net/bluetooth/rfcomm/tty.c
@@ -643,8 +643,8 @@ static void rfcomm_dev_modem_status(struct rfcomm_dlc *dlc, u8 v24_sig)
tty_port_tty_hangup(&dev->port, true);
dev->modem_status =
- ((v24_sig & RFCOMM_V24_RTC) ? (TIOCM_DSR | TIOCM_DTR) : 0) |
- ((v24_sig & RFCOMM_V24_RTR) ? (TIOCM_RTS | TIOCM_CTS) : 0) |
+ ((v24_sig & RFCOMM_V24_RTC) ? TIOCM_DSR : 0) |
+ ((v24_sig & RFCOMM_V24_RTR) ? TIOCM_CTS : 0) |
((v24_sig & RFCOMM_V24_IC) ? TIOCM_RI : 0) |
((v24_sig & RFCOMM_V24_DV) ? TIOCM_CD : 0);
}
@@ -1055,10 +1055,13 @@ static void rfcomm_tty_hangup(struct tty_struct *tty)
static int rfcomm_tty_tiocmget(struct tty_struct *tty)
{
struct rfcomm_dev *dev = tty->driver_data;
+ u8 v24_sig;
BT_DBG("tty %p dev %p", tty, dev);
- return dev->modem_status;
+ rfcomm_dlc_get_modem_status(dlc, &v24_sig);
+
+ return (v24_sig & (TIOCM_DTR | TIOCM_RTS)) | dev->modem_status;
}
static int rfcomm_tty_tiocmset(struct tty_struct *tty, unsigned int set, unsigned int clear)
@@ -1071,23 +1074,15 @@ static int rfcomm_tty_tiocmset(struct tty_struct *tty, unsigned int set, unsigne
rfcomm_dlc_get_modem_status(dlc, &v24_sig);
- if (set & TIOCM_DSR || set & TIOCM_DTR)
+ if (set & TIOCM_DTR)
v24_sig |= RFCOMM_V24_RTC;
- if (set & TIOCM_RTS || set & TIOCM_CTS)
+ if (set & TIOCM_RTS)
v24_sig |= RFCOMM_V24_RTR;
- if (set & TIOCM_RI)
- v24_sig |= RFCOMM_V24_IC;
- if (set & TIOCM_CD)
- v24_sig |= RFCOMM_V24_DV;
- if (clear & TIOCM_DSR || clear & TIOCM_DTR)
+ if (clear & TIOCM_DTR)
v24_sig &= ~RFCOMM_V24_RTC;
- if (clear & TIOCM_RTS || clear & TIOCM_CTS)
+ if (clear & TIOCM_RTS)
v24_sig &= ~RFCOMM_V24_RTR;
- if (clear & TIOCM_RI)
- v24_sig &= ~RFCOMM_V24_IC;
- if (clear & TIOCM_CD)
- v24_sig &= ~RFCOMM_V24_DV;
rfcomm_dlc_set_modem_status(dlc, v24_sig);
--
2.49.1
The patch below does not apply to the 6.6-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.6.y
git checkout FETCH_HEAD
git cherry-pick -x 9daa5a8795865f9a3c93d8d1066785b07ded6073
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<stable(a)vger.kernel.org>' --in-reply-to '2025101904-seltzer-landslide-60b6@gregkh' --subject-prefix 'PATCH 6.6.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 9daa5a8795865f9a3c93d8d1066785b07ded6073 Mon Sep 17 00:00:00 2001
From: Vineeth Vijayan <vneethv(a)linux.ibm.com>
Date: Wed, 1 Oct 2025 15:38:17 +0200
Subject: [PATCH] s390/cio: Update purge function to unregister the unused
subchannels
Starting with 'commit 2297791c92d0 ("s390/cio: dont unregister
subchannel from child-drivers")', cio no longer unregisters
subchannels when the attached device is invalid or unavailable.
As an unintended side-effect, the cio_ignore purge function no longer
removes subchannels for devices on the cio_ignore list if no CCW device
is attached. This situation occurs when a CCW device is non-operational
or unavailable
To ensure the same outcome of the purge function as when the
current cio_ignore list had been active during boot, update the purge
function to remove I/O subchannels without working CCW devices if the
associated device number is found on the cio_ignore list.
Fixes: 2297791c92d0 ("s390/cio: dont unregister subchannel from child-drivers")
Suggested-by: Peter Oberparleiter <oberpar(a)linux.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar(a)linux.ibm.com>
Signed-off-by: Vineeth Vijayan <vneethv(a)linux.ibm.com>
Signed-off-by: Heiko Carstens <hca(a)linux.ibm.com>
diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index fb2c07cb4d3d..4b2dae6eb376 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -1316,23 +1316,34 @@ void ccw_device_schedule_recovery(void)
spin_unlock_irqrestore(&recovery_lock, flags);
}
-static int purge_fn(struct device *dev, void *data)
+static int purge_fn(struct subchannel *sch, void *data)
{
- struct ccw_device *cdev = to_ccwdev(dev);
- struct ccw_dev_id *id = &cdev->private->dev_id;
- struct subchannel *sch = to_subchannel(cdev->dev.parent);
+ struct ccw_device *cdev;
- spin_lock_irq(cdev->ccwlock);
- if (is_blacklisted(id->ssid, id->devno) &&
- (cdev->private->state == DEV_STATE_OFFLINE) &&
- (atomic_cmpxchg(&cdev->private->onoff, 0, 1) == 0)) {
- CIO_MSG_EVENT(3, "ccw: purging 0.%x.%04x\n", id->ssid,
- id->devno);
+ spin_lock_irq(&sch->lock);
+ if (sch->st != SUBCHANNEL_TYPE_IO || !sch->schib.pmcw.dnv)
+ goto unlock;
+
+ if (!is_blacklisted(sch->schid.ssid, sch->schib.pmcw.dev))
+ goto unlock;
+
+ cdev = sch_get_cdev(sch);
+ if (cdev) {
+ if (cdev->private->state != DEV_STATE_OFFLINE)
+ goto unlock;
+
+ if (atomic_cmpxchg(&cdev->private->onoff, 0, 1) != 0)
+ goto unlock;
ccw_device_sched_todo(cdev, CDEV_TODO_UNREG);
- css_sched_sch_todo(sch, SCH_TODO_UNREG);
atomic_set(&cdev->private->onoff, 0);
}
- spin_unlock_irq(cdev->ccwlock);
+
+ css_sched_sch_todo(sch, SCH_TODO_UNREG);
+ CIO_MSG_EVENT(3, "ccw: purging 0.%x.%04x%s\n", sch->schid.ssid,
+ sch->schib.pmcw.dev, cdev ? "" : " (no cdev)");
+
+unlock:
+ spin_unlock_irq(&sch->lock);
/* Abort loop in case of pending signal. */
if (signal_pending(current))
return -EINTR;
@@ -1348,7 +1359,7 @@ static int purge_fn(struct device *dev, void *data)
int ccw_purge_blacklisted(void)
{
CIO_MSG_EVENT(2, "ccw: purging blacklisted devices\n");
- bus_for_each_dev(&ccw_bus_type, NULL, NULL, purge_fn);
+ for_each_subchannel_staged(purge_fn, NULL, NULL);
return 0;
}
If you need to cancel your Spirit Airlines flight, do not worry — the process is fairly straightforward! You can call Spirit Airlines directly at 📞 1-866-284-3022. Whether you are canceling due to personal reasons, weather disruptions, or a change in plans, this guide will walk you through every step. While cancellations can be made online, calling may provide faster support and more detailed assistance.
📍 Step 1: Find Your Flight Information
Before you call or go online, make sure you have the following information ready:
✅ Your booking confirmation number
✅ The name on the reservation
✅ Your flight details (departure date, destination, etc.)
Having this information handy will make the process quicker, especially if you are speaking with a Spirit Airlines representative at 📞 1-866-284-3022.
📞 Step 2: Call Spirit Airlines Customer Support
The easiest and most direct way to cancel your flight is by calling Spirit Airlines customer service at 1-866-284-3022. This line is available to assist with cancellations, modifications, and refund requests.
🧑💼 When you call:
• You will be prompted to enter your confirmation number
• Select the option for "existing reservation"
• Ask to speak to a live representative if needed
Pro tip: Call during off-peak hours (early mornings or late evenings) to avoid long wait times.
🌐 Step 3: Cancel Online (Alternative Option)
If you prefer to cancel online, follow these steps:
1. Go to the official Volaris Airlines website
2. Click on "My Trips" at the top of the homepage
3. Enter your last name and confirmation code
4. Find the reservation you want to cancel
5. Click on “Cancel” and follow the on-screen instructions
However, if you run into any issues or if your fare type does not allow online cancellations, don’t hesitate to call 1-866-284-3022 for support.
💸 Step 4: Check for Refund or Credit Eligibility
Spirit Airlines is a low-cost carrier, and refund policies can vary depending on the fare type. Here is a quick breakdown:
🟢 WORKS Bundle or Refundable Tickets: Eligible for a full refund
🟡 Standard Tickets: May not be refundable but can be canceled for a credit (valid for 90 days)
🔴 Basic Fare or Promo Tickets: Often non-refundable
To clarify your eligibility, it is best to speak to a Porter representative directly at 📞 1-866-284-3022. They can explain whether you will receive a refund, a travel credit, or incur a cancellation fee.
⏱️ Step 5: Cancel Within 24 Hours (If Possible)
✅ If you booked your ticket less than 24 hours ago AND your flight is at least 7 days away, you are eligible for a full refund with no cancellation fees.
To take advantage of this policy, it is strongly advised to call 1-866-284-3022 right away and notify them that you fall within the 24-hour window.
📧 Step 6: Get Confirmation of Cancellation
Once your flight is canceled, make sure to:
📨 Check your email for a cancellation confirmation
💳 Verify if any refund or credit has been issued to your account
📅 Note the expiration date of any travel credit issued (typically valid for 90 days)
If you have not received confirmation within a few hours, call 📞 1-866-284-3022 again to follow up and ensure your cancellation was processed correctly.
🤔 Need Help? Contact Spirit Airlines Again
Porter’s website can sometimes be tricky or limited in functionality, especially for special fares or last-minute cancellations. That is why calling customer service at 📞 1-866-284-3022 is always the most reliable option. Their agents can also assist with:
• Modifying your travel dates
• Applying travel credits
• Rebooking future flights
• Answering policy-related questions
✍️ Final Thoughts
Canceling a Spirit Airlines flight does not have to be stressful. Whether you are canceling online or over the phone, knowing the process and your rights can save you time and money. Always keep the Porter customer service number 📞 1-866-284-3022 on hand for quick assistance and peace of mind.
🧭 Quick Recap:
• Prepare your booking info
• Try canceling online or via the Porter app
• For best results, call Porter directly at 📞 1-866-284-3022
• Check your eligibility for refunds or travel credits
• Always get a cancellation confirmation
✈️ Safe travels — or smooth cancellations — whichever your journey brings next!
If you need to cancel your Aeromexico Airlines flight, do not worry — the process is fairly straightforward! You can call Aeromexico Airlines directly at 📞 1-866-284-3022. Whether you are canceling due to personal reasons, weather disruptions, or a change in plans, this guide will walk you through every step. While cancellations can be made online, calling may provide faster support and more detailed assistance.
📍 Step 1: Find Your Flight Information
Before you call or go online, make sure you have the following information ready:
✅ Your booking confirmation number
✅ The name on the reservation
✅ Your flight details (departure date, destination, etc.)
Having this information handy will make the process quicker, especially if you are speaking with a Aeromexico Airlines representative at 📞 1-866-284-3022.
📞 Step 2: Call Aeromexico Airlines Customer Support
The easiest and most direct way to cancel your flight is by calling Aeromexico Airlines customer service at 1-866-284-3022. This line is available to assist with cancellations, modifications, and refund requests.
🧑💼 When you call:
• You will be prompted to enter your confirmation number
• Select the option for "existing reservation"
• Ask to speak to a live representative if needed
Pro tip: Call during off-peak hours (early mornings or late evenings) to avoid long wait times.
🌐 Step 3: Cancel Online (Alternative Option)
If you prefer to cancel online, follow these steps:
1. Go to the official Volaris Airlines website
2. Click on "My Trips" at the top of the homepage
3. Enter your last name and confirmation code
4. Find the reservation you want to cancel
5. Click on “Cancel” and follow the on-screen instructions
However, if you run into any issues or if your fare type does not allow online cancellations, don’t hesitate to call 1-866-284-3022 for support.
💸 Step 4: Check for Refund or Credit Eligibility
Aeromexico Airlines is a low-cost carrier, and refund policies can vary depending on the fare type. Here is a quick breakdown:
🟢 WORKS Bundle or Refundable Tickets: Eligible for a full refund
🟡 Standard Tickets: May not be refundable but can be canceled for a credit (valid for 90 days)
🔴 Basic Fare or Promo Tickets: Often non-refundable
To clarify your eligibility, it is best to speak to a Porter representative directly at 📞 1-866-284-3022. They can explain whether you will receive a refund, a travel credit, or incur a cancellation fee.
⏱️ Step 5: Cancel Within 24 Hours (If Possible)
✅ If you booked your ticket less than 24 hours ago AND your flight is at least 7 days away, you are eligible for a full refund with no cancellation fees.
To take advantage of this policy, it is strongly advised to call 1-866-284-3022 right away and notify them that you fall within the 24-hour window.
📧 Step 6: Get Confirmation of Cancellation
Once your flight is canceled, make sure to:
📨 Check your email for a cancellation confirmation
💳 Verify if any refund or credit has been issued to your account
📅 Note the expiration date of any travel credit issued (typically valid for 90 days)
If you have not received confirmation within a few hours, call 📞 1-866-284-3022 again to follow up and ensure your cancellation was processed correctly.
🤔 Need Help? Contact Aeromexico Airlines Again
Porter’s website can sometimes be tricky or limited in functionality, especially for special fares or last-minute cancellations. That is why calling customer service at 📞 1-866-284-3022 is always the most reliable option. Their agents can also assist with:
• Modifying your travel dates
• Applying travel credits
• Rebooking future flights
• Answering policy-related questions
✍️ Final Thoughts
Canceling a Aeromexico Airlines flight does not have to be stressful. Whether you are canceling online or over the phone, knowing the process and your rights can save you time and money. Always keep the Porter customer service number 📞 1-866-284-3022 on hand for quick assistance and peace of mind.
🧭 Quick Recap:
• Prepare your booking info
• Try canceling online or via the Porter app
• For best results, call Porter directly at 📞 1-866-284-3022
• Check your eligibility for refunds or travel credits
• Always get a cancellation confirmation
✈️ Safe travels — or smooth cancellations — whichever your journey brings next!
If you need to cancel your Avelo Airlines flight, do not worry — the process is fairly straightforward! You can call Avelo Airlines directly at 📞 1-866-284-3022. Whether you are canceling due to personal reasons, weather disruptions, or a change in plans, this guide will walk you through every step. While cancellations can be made online, calling may provide faster support and more detailed assistance.
📍 Step 1: Find Your Flight Information
Before you call or go online, make sure you have the following information ready:
✅ Your booking confirmation number
✅ The name on the reservation
✅ Your flight details (departure date, destination, etc.)
Having this information handy will make the process quicker, especially if you are speaking with a Avelo Airlines representative at 📞 1-866-284-3022.
📞 Step 2: Call Avelo Airlines Customer Support
The easiest and most direct way to cancel your flight is by calling Avelo Airlines customer service at 1-866-284-3022. This line is available to assist with cancellations, modifications, and refund requests.
🧑💼 When you call:
• You will be prompted to enter your confirmation number
• Select the option for "existing reservation"
• Ask to speak to a live representative if needed
Pro tip: Call during off-peak hours (early mornings or late evenings) to avoid long wait times.
🌐 Step 3: Cancel Online (Alternative Option)
If you prefer to cancel online, follow these steps:
1. Go to the official Volaris Airlines website
2. Click on "My Trips" at the top of the homepage
3. Enter your last name and confirmation code
4. Find the reservation you want to cancel
5. Click on “Cancel” and follow the on-screen instructions
However, if you run into any issues or if your fare type does not allow online cancellations, don’t hesitate to call 1-866-284-3022 for support.
💸 Step 4: Check for Refund or Credit Eligibility
Avelo Airlines is a low-cost carrier, and refund policies can vary depending on the fare type. Here is a quick breakdown:
🟢 WORKS Bundle or Refundable Tickets: Eligible for a full refund
🟡 Standard Tickets: May not be refundable but can be canceled for a credit (valid for 90 days)
🔴 Basic Fare or Promo Tickets: Often non-refundable
To clarify your eligibility, it is best to speak to a Porter representative directly at 📞 1-866-284-3022. They can explain whether you will receive a refund, a travel credit, or incur a cancellation fee.
⏱️ Step 5: Cancel Within 24 Hours (If Possible)
✅ If you booked your ticket less than 24 hours ago AND your flight is at least 7 days away, you are eligible for a full refund with no cancellation fees.
To take advantage of this policy, it is strongly advised to call 1-866-284-3022 right away and notify them that you fall within the 24-hour window.
📧 Step 6: Get Confirmation of Cancellation
Once your flight is canceled, make sure to:
📨 Check your email for a cancellation confirmation
💳 Verify if any refund or credit has been issued to your account
📅 Note the expiration date of any travel credit issued (typically valid for 90 days)
If you have not received confirmation within a few hours, call 📞 1-866-284-3022 again to follow up and ensure your cancellation was processed correctly.
🤔 Need Help? Contact Avelo Airlines Again
Porter’s website can sometimes be tricky or limited in functionality, especially for special fares or last-minute cancellations. That is why calling customer service at 📞 1-866-284-3022 is always the most reliable option. Their agents can also assist with:
• Modifying your travel dates
• Applying travel credits
• Rebooking future flights
• Answering policy-related questions
✍️ Final Thoughts
Canceling a Avelo Airlines flight does not have to be stressful. Whether you are canceling online or over the phone, knowing the process and your rights can save you time and money. Always keep the Porter customer service number 📞 1-866-284-3022 on hand for quick assistance and peace of mind.
🧭 Quick Recap:
• Prepare your booking info
• Try canceling online or via the Porter app
• For best results, call Porter directly at 📞 1-866-284-3022
• Check your eligibility for refunds or travel credits
• Always get a cancellation confirmation
✈️ Safe travels — or smooth cancellations — whichever your journey brings next!
If you need to cancel your Contour Airlines flight, do not worry — the process is fairly straightforward! You can call Contour Airlines directly at 📞 1-866-284-3022. Whether you are canceling due to personal reasons, weather disruptions, or a change in plans, this guide will walk you through every step. While cancellations can be made online, calling may provide faster support and more detailed assistance.
📍 Step 1: Find Your Flight Information
Before you call or go online, make sure you have the following information ready:
✅ Your booking confirmation number
✅ The name on the reservation
✅ Your flight details (departure date, destination, etc.)
Having this information handy will make the process quicker, especially if you are speaking with a Contour Airlines representative at 📞 1-866-284-3022.
📞 Step 2: Call Contour Airlines Customer Support
The easiest and most direct way to cancel your flight is by calling Contour Airlines customer service at 1-866-284-3022. This line is available to assist with cancellations, modifications, and refund requests.
🧑💼 When you call:
• You will be prompted to enter your confirmation number
• Select the option for "existing reservation"
• Ask to speak to a live representative if needed
Pro tip: Call during off-peak hours (early mornings or late evenings) to avoid long wait times.
🌐 Step 3: Cancel Online (Alternative Option)
If you prefer to cancel online, follow these steps:
1. Go to the official Volaris Airlines website
2. Click on "My Trips" at the top of the homepage
3. Enter your last name and confirmation code
4. Find the reservation you want to cancel
5. Click on “Cancel” and follow the on-screen instructions
However, if you run into any issues or if your fare type does not allow online cancellations, don’t hesitate to call 1-866-284-3022 for support.
💸 Step 4: Check for Refund or Credit Eligibility
Contour Airlines is a low-cost carrier, and refund policies can vary depending on the fare type. Here is a quick breakdown:
🟢 WORKS Bundle or Refundable Tickets: Eligible for a full refund
🟡 Standard Tickets: May not be refundable but can be canceled for a credit (valid for 90 days)
🔴 Basic Fare or Promo Tickets: Often non-refundable
To clarify your eligibility, it is best to speak to a Porter representative directly at 📞 1-866-284-3022. They can explain whether you will receive a refund, a travel credit, or incur a cancellation fee.
⏱️ Step 5: Cancel Within 24 Hours (If Possible)
✅ If you booked your ticket less than 24 hours ago AND your flight is at least 7 days away, you are eligible for a full refund with no cancellation fees.
To take advantage of this policy, it is strongly advised to call 1-866-284-3022 right away and notify them that you fall within the 24-hour window.
📧 Step 6: Get Confirmation of Cancellation
Once your flight is canceled, make sure to:
📨 Check your email for a cancellation confirmation
💳 Verify if any refund or credit has been issued to your account
📅 Note the expiration date of any travel credit issued (typically valid for 90 days)
If you have not received confirmation within a few hours, call 📞 1-866-284-3022 again to follow up and ensure your cancellation was processed correctly.
🤔 Need Help? Contact Contour Airlines Again
Porter’s website can sometimes be tricky or limited in functionality, especially for special fares or last-minute cancellations. That is why calling customer service at 📞 1-866-284-3022 is always the most reliable option. Their agents can also assist with:
• Modifying your travel dates
• Applying travel credits
• Rebooking future flights
• Answering policy-related questions
✍️ Final Thoughts
Canceling a Contour Airlines flight does not have to be stressful. Whether you are canceling online or over the phone, knowing the process and your rights can save you time and money. Always keep the Porter customer service number 📞 1-866-284-3022 on hand for quick assistance and peace of mind.
🧭 Quick Recap:
• Prepare your booking info
• Try canceling online or via the Porter app
• For best results, call Porter directly at 📞 1-866-284-3022
• Check your eligibility for refunds or travel credits
• Always get a cancellation confirmation
✈️ Safe travels — or smooth cancellations — whichever your journey brings next!
If you need to cancel your Condor Airlines flight, do not worry — the process is fairly straightforward! You can call Condor Airlines directly at 📞 1-866-284-3022. Whether you are canceling due to personal reasons, weather disruptions, or a change in plans, this guide will walk you through every step. While cancellations can be made online, calling may provide faster support and more detailed assistance.
📍 Step 1: Find Your Flight Information
Before you call or go online, make sure you have the following information ready:
✅ Your booking confirmation number
✅ The name on the reservation
✅ Your flight details (departure date, destination, etc.)
Having this information handy will make the process quicker, especially if you are speaking with a Condor Airlines representative at 📞 1-866-284-3022.
📞 Step 2: Call Condor Airlines Customer Support
The easiest and most direct way to cancel your flight is by calling Condor Airlines customer service at 1-866-284-3022. This line is available to assist with cancellations, modifications, and refund requests.
🧑💼 When you call:
• You will be prompted to enter your confirmation number
• Select the option for "existing reservation"
• Ask to speak to a live representative if needed
Pro tip: Call during off-peak hours (early mornings or late evenings) to avoid long wait times.
🌐 Step 3: Cancel Online (Alternative Option)
If you prefer to cancel online, follow these steps:
1. Go to the official Volaris Airlines website
2. Click on "My Trips" at the top of the homepage
3. Enter your last name and confirmation code
4. Find the reservation you want to cancel
5. Click on “Cancel” and follow the on-screen instructions
However, if you run into any issues or if your fare type does not allow online cancellations, don’t hesitate to call 1-866-284-3022 for support.
💸 Step 4: Check for Refund or Credit Eligibility
Condor Airlines is a low-cost carrier, and refund policies can vary depending on the fare type. Here is a quick breakdown:
🟢 WORKS Bundle or Refundable Tickets: Eligible for a full refund
🟡 Standard Tickets: May not be refundable but can be canceled for a credit (valid for 90 days)
🔴 Basic Fare or Promo Tickets: Often non-refundable
To clarify your eligibility, it is best to speak to a Porter representative directly at 📞 1-866-284-3022. They can explain whether you will receive a refund, a travel credit, or incur a cancellation fee.
⏱️ Step 5: Cancel Within 24 Hours (If Possible)
✅ If you booked your ticket less than 24 hours ago AND your flight is at least 7 days away, you are eligible for a full refund with no cancellation fees.
To take advantage of this policy, it is strongly advised to call 1-866-284-3022 right away and notify them that you fall within the 24-hour window.
📧 Step 6: Get Confirmation of Cancellation
Once your flight is canceled, make sure to:
📨 Check your email for a cancellation confirmation
💳 Verify if any refund or credit has been issued to your account
📅 Note the expiration date of any travel credit issued (typically valid for 90 days)
If you have not received confirmation within a few hours, call 📞 1-866-284-3022 again to follow up and ensure your cancellation was processed correctly.
🤔 Need Help? Contact Condor Airlines Again
Porter’s website can sometimes be tricky or limited in functionality, especially for special fares or last-minute cancellations. That is why calling customer service at 📞 1-866-284-3022 is always the most reliable option. Their agents can also assist with:
• Modifying your travel dates
• Applying travel credits
• Rebooking future flights
• Answering policy-related questions
✍️ Final Thoughts
Canceling a Condor Airlines flight does not have to be stressful. Whether you are canceling online or over the phone, knowing the process and your rights can save you time and money. Always keep the Porter customer service number 📞 1-866-284-3022 on hand for quick assistance and peace of mind.
🧭 Quick Recap:
• Prepare your booking info
• Try canceling online or via the Porter app
• For best results, call Porter directly at 📞 1-866-284-3022
• Check your eligibility for refunds or travel credits
• Always get a cancellation confirmation
✈️ Safe travels — or smooth cancellations — whichever your journey brings next!
If you need to cancel your Frontier Airlines flight, do not worry — the process is fairly straightforward! You can call Frontier Airlines directly at 📞 1-866-284-3022. Whether you are canceling due to personal reasons, weather disruptions, or a change in plans, this guide will walk you through every step. While cancellations can be made online, calling may provide faster support and more detailed assistance.
📍 Step 1: Find Your Flight Information
Before you call or go online, make sure you have the following information ready:
✅ Your booking confirmation number
✅ The name on the reservation
✅ Your flight details (departure date, destination, etc.)
Having this information handy will make the process quicker, especially if you are speaking with a Frontier Airlines representative at 📞 1-866-284-3022.
📞 Step 2: Call Frontier Airlines Customer Support
The easiest and most direct way to cancel your flight is by calling Frontier Airlines customer service at 1-866-284-3022. This line is available to assist with cancellations, modifications, and refund requests.
🧑💼 When you call:
• You will be prompted to enter your confirmation number
• Select the option for "existing reservation"
• Ask to speak to a live representative if needed
Pro tip: Call during off-peak hours (early mornings or late evenings) to avoid long wait times.
🌐 Step 3: Cancel Online (Alternative Option)
If you prefer to cancel online, follow these steps:
1. Go to the official Volaris Airlines website
2. Click on "My Trips" at the top of the homepage
3. Enter your last name and confirmation code
4. Find the reservation you want to cancel
5. Click on “Cancel” and follow the on-screen instructions
However, if you run into any issues or if your fare type does not allow online cancellations, don’t hesitate to call 1-866-284-3022 for support.
💸 Step 4: Check for Refund or Credit Eligibility
Frontier Airlines is a low-cost carrier, and refund policies can vary depending on the fare type. Here is a quick breakdown:
🟢 WORKS Bundle or Refundable Tickets: Eligible for a full refund
🟡 Standard Tickets: May not be refundable but can be canceled for a credit (valid for 90 days)
🔴 Basic Fare or Promo Tickets: Often non-refundable
To clarify your eligibility, it is best to speak to a Porter representative directly at 📞 1-866-284-3022. They can explain whether you will receive a refund, a travel credit, or incur a cancellation fee.
⏱️ Step 5: Cancel Within 24 Hours (If Possible)
✅ If you booked your ticket less than 24 hours ago AND your flight is at least 7 days away, you are eligible for a full refund with no cancellation fees.
To take advantage of this policy, it is strongly advised to call 1-866-284-3022 right away and notify them that you fall within the 24-hour window.
📧 Step 6: Get Confirmation of Cancellation
Once your flight is canceled, make sure to:
📨 Check your email for a cancellation confirmation
💳 Verify if any refund or credit has been issued to your account
📅 Note the expiration date of any travel credit issued (typically valid for 90 days)
If you have not received confirmation within a few hours, call 📞 1-866-284-3022 again to follow up and ensure your cancellation was processed correctly.
🤔 Need Help? Contact Frontier Airlines Again
Porter’s website can sometimes be tricky or limited in functionality, especially for special fares or last-minute cancellations. That is why calling customer service at 📞 1-866-284-3022 is always the most reliable option. Their agents can also assist with:
• Modifying your travel dates
• Applying travel credits
• Rebooking future flights
• Answering policy-related questions
✍️ Final Thoughts
Canceling a Frontier Airlines flight does not have to be stressful. Whether you are canceling online or over the phone, knowing the process and your rights can save you time and money. Always keep the Porter customer service number 📞 1-866-284-3022 on hand for quick assistance and peace of mind.
🧭 Quick Recap:
• Prepare your booking info
• Try canceling online or via the Porter app
• For best results, call Porter directly at 📞 1-866-284-3022
• Check your eligibility for refunds or travel credits
• Always get a cancellation confirmation
✈️ Safe travels — or smooth cancellations — whichever your journey brings next!
Fix the order of the freq-table-hz property, then convert to OPP tables
and add interconnect support for UFS for the SM6350 SoC.
Signed-off-by: Luca Weiss <luca.weiss(a)fairphone.com>
---
Changes in v2:
- Resend, pick up tags
- Link to v1: https://lore.kernel.org/r/20250314-sm6350-ufs-things-v1-0-3600362cc52c@fair…
---
Luca Weiss (3):
arm64: dts: qcom: sm6350: Fix wrong order of freq-table-hz for UFS
arm64: dts: qcom: sm6350: Add OPP table support to UFSHC
arm64: dts: qcom: sm6350: Add interconnect support to UFS
arch/arm64/boot/dts/qcom/sm6350.dtsi | 49 ++++++++++++++++++++++++++++--------
1 file changed, 39 insertions(+), 10 deletions(-)
---
base-commit: a92c761bcac3d5042559107fa7679470727a4bcb
change-id: 20250314-sm6350-ufs-things-53c5de9fec5e
Best regards,
--
Luca Weiss <luca.weiss(a)fairphone.com>
If the send_peer_notif counter and the peer event notify are not synchronized.
It may cause problems such as the loss or dup of peer notify event.
Before this patch:
- If should_notify_peers is true and the lock for send_peer_notif-- fails, peer
event may be sent again in next mii_monitor loop, because should_notify_peers
is still true.
- If should_notify_peers is true and the lock for send_peer_notif-- succeeded,
but the lock for peer event fails, the peer event will be lost.
This patch locks the RTNL for send_peer_notif, events, and commit simultaneously.
Fixes: 07a4ddec3ce9 ("bonding: add an option to specify a delay between peer notifications")
Cc: Jay Vosburgh <jv(a)jvosburgh.net>
Cc: Andrew Lunn <andrew+netdev(a)lunn.ch>
Cc: Eric Dumazet <edumazet(a)google.com>
Cc: Jakub Kicinski <kuba(a)kernel.org>
Cc: Paolo Abeni <pabeni(a)redhat.com>
Cc: Hangbin Liu <liuhangbin(a)gmail.com>
Cc: Nikolay Aleksandrov <razor(a)blackwall.org>
Cc: Vincent Bernat <vincent(a)bernat.ch>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Tonghao Zhang <tonghao(a)bamaicloud.com>
---
drivers/net/bonding/bond_main.c | 40 +++++++++++++++------------------
1 file changed, 18 insertions(+), 22 deletions(-)
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 5791c3e39baa..52b7ac8ddfbc 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -2971,7 +2971,7 @@ static void bond_mii_monitor(struct work_struct *work)
{
struct bonding *bond = container_of(work, struct bonding,
mii_work.work);
- bool should_notify_peers = false;
+ bool should_notify_peers;
bool commit;
unsigned long delay;
struct slave *slave;
@@ -2983,30 +2983,33 @@ static void bond_mii_monitor(struct work_struct *work)
goto re_arm;
rcu_read_lock();
+
should_notify_peers = bond_should_notify_peers(bond);
commit = !!bond_miimon_inspect(bond);
- if (bond->send_peer_notif) {
- rcu_read_unlock();
- if (rtnl_trylock()) {
- bond->send_peer_notif--;
- rtnl_unlock();
- }
- } else {
- rcu_read_unlock();
- }
- if (commit) {
+ rcu_read_unlock();
+
+ if (commit || bond->send_peer_notif) {
/* Race avoidance with bond_close cancel of workqueue */
if (!rtnl_trylock()) {
delay = 1;
- should_notify_peers = false;
goto re_arm;
}
- bond_for_each_slave(bond, slave, iter) {
- bond_commit_link_state(slave, BOND_SLAVE_NOTIFY_LATER);
+ if (commit) {
+ bond_for_each_slave(bond, slave, iter) {
+ bond_commit_link_state(slave,
+ BOND_SLAVE_NOTIFY_LATER);
+ }
+ bond_miimon_commit(bond);
+ }
+
+ if (bond->send_peer_notif) {
+ bond->send_peer_notif--;
+ if (should_notify_peers)
+ call_netdevice_notifiers(NETDEV_NOTIFY_PEERS,
+ bond->dev);
}
- bond_miimon_commit(bond);
rtnl_unlock(); /* might sleep, hold no other locks */
}
@@ -3014,13 +3017,6 @@ static void bond_mii_monitor(struct work_struct *work)
re_arm:
if (bond->params.miimon)
queue_delayed_work(bond->wq, &bond->mii_work, delay);
-
- if (should_notify_peers) {
- if (!rtnl_trylock())
- return;
- call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, bond->dev);
- rtnl_unlock();
- }
}
static int bond_upper_dev_walk(struct net_device *upper,
--
2.34.1
In i2c_amd_probe(), amd_mp2_find_device() utilizes
driver_find_next_device() which internally calls driver_find_device()
to locate the matching device. driver_find_device() increments the
reference count of the found device by calling get_device(), but
amd_mp2_find_device() fails to call put_device() to decrement the
reference count before returning. This results in a reference count
leak of the PCI device each time i2c_amd_probe() is executed, which
may prevent the device from being properly released and cause a memory
leak.
Found by code review.
Cc: stable(a)vger.kernel.org
Fixes: 529766e0a011 ("i2c: Add drivers for the AMD PCIe MP2 I2C controller")
Signed-off-by: Ma Ke <make24(a)iscas.ac.cn>
---
Changes in v3:
- kept the temporary variable to store pci_get_drvdata() result before releasing the device reference;
Changes in v2:
- modified the missing initialization in the patch. Sorry for the omission.
---
drivers/i2c/busses/i2c-amd-mp2-pci.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/i2c/busses/i2c-amd-mp2-pci.c b/drivers/i2c/busses/i2c-amd-mp2-pci.c
index ef7370d3dbea..60edbabc2986 100644
--- a/drivers/i2c/busses/i2c-amd-mp2-pci.c
+++ b/drivers/i2c/busses/i2c-amd-mp2-pci.c
@@ -458,13 +458,16 @@ struct amd_mp2_dev *amd_mp2_find_device(void)
{
struct device *dev;
struct pci_dev *pci_dev;
+ struct amd_mp2_dev *mp2_dev;
dev = driver_find_next_device(&amd_mp2_pci_driver.driver, NULL);
if (!dev)
return NULL;
pci_dev = to_pci_dev(dev);
- return (struct amd_mp2_dev *)pci_get_drvdata(pci_dev);
+ mp2_dev = (struct amd_mp2_dev *)pci_get_drvdata(pci_dev);
+ put_device(dev);
+ return mp2_dev;
}
EXPORT_SYMBOL_GPL(amd_mp2_find_device);
--
2.17.1
vb2_ioctl_remove_bufs() call manipulates queue internal buffer list,
potentially overwriting some pointers used by the legacy fileio access
mode. Add a vb2_verify_memory_type() check symmetrical to
vb2_ioctl_create_bufs() to forbid that ioctl when fileio is active to
protect internal queue state between subsequent read/write calls.
CC: stable(a)vger.kernel.org
Fixes: a3293a85381e ("media: v4l2: Add REMOVE_BUFS ioctl")
Reported-by: Shuangpeng Bai<SJB7183(a)psu.edu>
Suggested-by: Benjamin Gaignard <benjamin.gaignard(a)collabora.com>
Signed-off-by: Marek Szyprowski <m.szyprowski(a)samsung.com>
---
v2:
- dropped a change to vb2_ioctl_create_bufs(), as it is already handled
by the vb2_verify_memory_type() call
- replaced queue->type check in vb2_ioctl_remove_bufs() by a call to
vb2_verify_memory_type() which covers all cases
v1: https://lore.kernel.org/all/20251016111154.993949-1-m.szyprowski@samsung.co…
---
drivers/media/common/videobuf2/videobuf2-v4l2.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
index d911021c1bb0..0de7490292fe 100644
--- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
+++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
@@ -1000,9 +1000,11 @@ int vb2_ioctl_remove_bufs(struct file *file, void *priv,
struct v4l2_remove_buffers *d)
{
struct video_device *vdev = video_devdata(file);
+ int res;
- if (vdev->queue->type != d->type)
- return -EINVAL;
+ res = vb2_verify_memory_type(vdev->queue, vdev->queue->memory, d->type);
+ if (res)
+ return res;
if (d->count == 0)
return 0;
--
2.34.1
From: Lad Prabhakar <prabhakar.mahadev-lad.rj(a)bp.renesas.com>
On SoCs that only support the best-effort queue and not the network
control queue, calling alloc_etherdev_mqs() with fixed values for
TX/RX queues is not appropriate. Use the nc_queues flag from the
per-SoC match data to determine whether the network control queue
is available, and fall back to a single TX/RX queue when it is not.
This ensures correct queue allocation across all supported SoCs.
Fixes: a92f4f0662bf ("ravb: Add nc_queue to struct ravb_hw_info")
Cc: stable(a)vger.kernel.org
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj(a)bp.renesas.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas(a)ragnatech.se>
---
v1->v2:
- Added Reviewed-by tag from Niklas.
---
drivers/net/ethernet/renesas/ravb_main.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c
index 69d382e8757d..a200e205825a 100644
--- a/drivers/net/ethernet/renesas/ravb_main.c
+++ b/drivers/net/ethernet/renesas/ravb_main.c
@@ -2926,13 +2926,14 @@ static int ravb_probe(struct platform_device *pdev)
return dev_err_probe(&pdev->dev, PTR_ERR(rstc),
"failed to get cpg reset\n");
+ info = of_device_get_match_data(&pdev->dev);
+
ndev = alloc_etherdev_mqs(sizeof(struct ravb_private),
- NUM_TX_QUEUE, NUM_RX_QUEUE);
+ info->nc_queues ? NUM_TX_QUEUE : 1,
+ info->nc_queues ? NUM_RX_QUEUE : 1);
if (!ndev)
return -ENOMEM;
- info = of_device_get_match_data(&pdev->dev);
-
ndev->features = info->net_features;
ndev->hw_features = info->net_hw_features;
ndev->vlan_features = info->vlan_features;
--
2.43.0
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
📞 Call 24/7 QuickBooks® Enterprise™ Support: 1-855-219-0007
Are you facing issues with QuickBooks® Enterprise™ and need immediate assistance? Do not worry--help is just a phone call away! Our 24/7 QuickBooks® Enterprise™ Support is available at 1-855-219-0007, ready to help you resolve any accounting or technical issues around the clock. Whether it is late at night, early morning, or during a holiday, our expert team is standing by to provide fast, friendly support.
Why Call 24/7 QuickBooks® Enterprise™ Support? 📈
QuickBooks® Enterprise™ is a powerful accounting solution used by thousands of businesses across the U.S. But even the most robust software can run into occasional hiccups--and when it does, you need help fast.
✅ Real-time support
✅ Certified QuickBooks experts
✅ 100% U.S.-based support
✅ No waiting--live agents on call
Just call 1-855-219-0007 anytime--our agents are trained to assist with setup, installation, payroll, multi-user issues, and any technical errors that may arise.
Common Issues We Can Help With 🔧
When you are stuck, time is money. Our QuickBooks® Enterprise™ specialists can walk you through even the most complex problems. Call us now at 1-855-219-0007 for help with:
🛠️ Error codes like H202, 6000 series, or 6177
🧾 Company file not opening or loading
🔄 Data sync and backup issues
👥 Multi-user mode configuration problems
💰 Payroll setup or tax form errors
📊 Custom reports or chart of accounts
Whether it is a small bug or a major crash, just call 1-855-219-0007 and get back to business quickly.
Available 24/7 – Even on Weekends and Holidays 🕒
Many business owners work after hours or need help outside of 9 to 5. That is why our QuickBooks® Enterprise™ Support Line (1-855-219-0007) never closes. We are open 24 hours a day, 7 days a week--including weekends and holidays!
🌙 Working late? Call us.
🎄 It is a holiday? We are still here.
🚨 Emergency? We will pick up.
It is like having your own IT department, just a phone call away--1-855-219-0007.
Live Help from Certified Experts 👨💻👩💻
Not all support is created equal. When you call 1-855-219-0007, you are speaking with professionals who are:
✔️ Intuit Certified ProAdvisors
✔️ Highly trained in QuickBooks® Enterprise™
✔️ Experienced in handling business accounting for all industries
✔️ Friendly, patient, and clear communicators
We do not read from scripts. We solve real problems with real people--fast.
Remote Assistance Available 🔐
Some problems need hands-on troubleshooting. We offer secure remote support--with your permission--so our experts can access your system and fix the issue in real time. All you need to do is call 1-855-219-0007, and we will guide you step-by-step.
Your data is safe and confidential--always protected under strict security protocols. 🔒
Get Help Now – Do not Wait! 🚀
When QuickBooks® Enterprise™ stops working, your workflow stalls. That is why you should not wait hours or search forums for answers. Get direct access to our support team now by calling:
📞 1-855-219-0007
Do not let technical issues slow you down. Our friendly agents are available day or night to get you back on track--usually within minutes.
Who Can Call This Support Line? 📣
This support service is perfect for:
✅ Small to mid-size businesses
✅ Accountants and bookkeepers
✅ Enterprise-level organizations
✅ First-time QuickBooks users
✅ Long-time users with new errors
If you are using QuickBooks® Enterprise™, this number is for you: 1-855-219-0007.
Do not Risk Losing Data or Time – Call Now! ⏳
Even minor issues in QuickBooks can lead to hours of lost time or incorrect financials. Whether you are experiencing performance lags, crashing software, or user access issues, do not try to fix it alone.
Instead, call the experts at 1-855-219-0007--your trusted QuickBooks® Enterprise™ Support directory. We will diagnose and resolve the problem, often on the first call.
📞 Call Now: 1-855-219-0007 – QuickBooks® Enterprise™ Support You Can Trust!
Let us handle the stress while you focus on growing your business. Fast. Friendly. 24/7.
Qu!ckB00ks helpline
Qu!ckB00ks support contact
Qu!ckB00ks customer care
Qu!ckB00ks phone support
Qu!ckB00ks support email
Qu!ckB00ks live chat
Qu!ckB00ks help desk
Qu!ckB00ks contact support
Qu!ckB00ks support team
Qu!ckB00ks customer assistance
Qu!ckB00ks service hotline
Qu!ckB00ks technical support
Qu!ckB00ks issue resolution
Qu!ckB00ks account help
Qu!ckB00ks payment support
Qu!ckB00ks withdrawal issues
Qu!ckB00ks login help
Qu!ckB00ks verification support
Qu!ckB00ks account recovery
Qu!ckB00ks lost access
Qu!ckB00ks security issues
Qu!ckB00ks fraud support
Qu!ckB00ks billing support
Qu!ckB00ks transaction problems
Qu!ckB00ks support
Qu!ckB00ks wallet issues
Qu!ckB00ks mobile app support
Qu!ckB00ks crypto transfer help
Qu!ckB00ks error fixing
Qu!ckB00ks support login
Qu!ckB00ks problem resolution
Qu!ckB00ks feedback contact
Qu!ckB00ks account suspension help
Qu!ckB00ks withdrawal delay
Qu!ckB00ks deposit issues
Qu!ckB00ks crypto conversion help
Qu!ckB00ks order status
Qu!ckB00ks refund support
Qu!ckB00ks tax document support
Qu!ckB00ks international support
Qu!ckB00ks 24/7 support
Qu!ckB00ks account settings help
Qu!ckB00ks password reset
Qu!ckB00ks two-factor authentication help
Qu!ckB00ks customer inquiry
Qu!ckB00ks support number USA
Qu!ckB00ks help center phone number
Do not stop a q6asm stream if its not started, this can result in
unnecessary dsp command which will timeout anyway something like below:
q6asm-dai ab00000.remoteproc:glink-edge:apr:service@7:dais: CMD 10bcd timeout
Fix this by correctly checking the state.
Fixes: 2a9e92d371db ("ASoC: qdsp6: q6asm: Add q6asm dai driver")
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla(a)oss.qualcomm.com>
Tested-by: Alexey Klimov <alexey.klimov(a)linaro.org> # RB5, RB3
---
sound/soc/qcom/qdsp6/q6asm-dai.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/sound/soc/qcom/qdsp6/q6asm-dai.c b/sound/soc/qcom/qdsp6/q6asm-dai.c
index e8129510a734..0eae8c6e42b8 100644
--- a/sound/soc/qcom/qdsp6/q6asm-dai.c
+++ b/sound/soc/qcom/qdsp6/q6asm-dai.c
@@ -233,13 +233,14 @@ static int q6asm_dai_prepare(struct snd_soc_component *component,
prtd->pcm_count = snd_pcm_lib_period_bytes(substream);
prtd->pcm_irq_pos = 0;
/* rate and channels are sent to audio driver */
- if (prtd->state) {
+ if (prtd->state == Q6ASM_STREAM_RUNNING) {
/* clear the previous setup if any */
q6asm_cmd(prtd->audio_client, prtd->stream_id, CMD_CLOSE);
q6asm_unmap_memory_regions(substream->stream,
prtd->audio_client);
q6routing_stream_close(soc_prtd->dai_link->id,
substream->stream);
+ prtd->state = Q6ASM_STREAM_STOPPED;
}
ret = q6asm_map_memory_regions(substream->stream, prtd->audio_client,
--
2.51.0
DSP expects the periods to be aligned to fragment sizes, currently
setting up to hw constriants on periods bytes is not going to work
correctly as we can endup with periods sizes aligned to 32 bytes however
not aligned to fragment size.
Update the constriants to use fragment size, and also set at step of
10ms for period size to accommodate DSP requirements of 10ms latency.
Fixes: 2a9e92d371db ("ASoC: qdsp6: q6asm: Add q6asm dai driver")
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla(a)oss.qualcomm.com>
Tested-by: Alexey Klimov <alexey.klimov(a)linaro.org> # RB5, RB3
---
sound/soc/qcom/qdsp6/q6asm-dai.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/qcom/qdsp6/q6asm-dai.c b/sound/soc/qcom/qdsp6/q6asm-dai.c
index b616ce316d2f..e8129510a734 100644
--- a/sound/soc/qcom/qdsp6/q6asm-dai.c
+++ b/sound/soc/qcom/qdsp6/q6asm-dai.c
@@ -403,13 +403,13 @@ static int q6asm_dai_open(struct snd_soc_component *component,
}
ret = snd_pcm_hw_constraint_step(runtime, 0,
- SNDRV_PCM_HW_PARAM_PERIOD_BYTES, 32);
+ SNDRV_PCM_HW_PARAM_PERIOD_SIZE, 480);
if (ret < 0) {
dev_err(dev, "constraint for period bytes step ret = %d\n",
ret);
}
ret = snd_pcm_hw_constraint_step(runtime, 0,
- SNDRV_PCM_HW_PARAM_BUFFER_BYTES, 32);
+ SNDRV_PCM_HW_PARAM_BUFFER_SIZE, 480);
if (ret < 0) {
dev_err(dev, "constraint for buffer bytes step ret = %d\n",
ret);
--
2.51.0
MAX77620 is most likely always a single device on the board, however
nothing stops board designers to have two of them, thus same device
driver could probe twice. Or user could manually try to probing second
time.
Device driver is not ready for that case, because it allocates
statically 'struct regmap_irq_chip' as non-const and stores during
probe in 'irq_drv_data' member a pointer to per-probe state
container ('struct max77620_chip'). devm_regmap_add_irq_chip() does not
make a copy of 'struct regmap_irq_chip' but store the pointer.
Second probe - either successful or failure - would overwrite the
'irq_drv_data' from previous device probe, so interrupts would be
executed in a wrong context.
Fixes: 3df140d11c6d ("mfd: max77620: Mask/unmask interrupt before/after servicing it")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
---
Not tested on hardware
---
drivers/mfd/max77620.c | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/drivers/mfd/max77620.c b/drivers/mfd/max77620.c
index 21d2ab3db254..3af2974b3023 100644
--- a/drivers/mfd/max77620.c
+++ b/drivers/mfd/max77620.c
@@ -254,7 +254,7 @@ static int max77620_irq_global_unmask(void *irq_drv_data)
return ret;
}
-static struct regmap_irq_chip max77620_top_irq_chip = {
+static const struct regmap_irq_chip max77620_top_irq_chip = {
.name = "max77620-top",
.irqs = max77620_top_irqs,
.num_irqs = ARRAY_SIZE(max77620_top_irqs),
@@ -498,6 +498,7 @@ static int max77620_probe(struct i2c_client *client)
const struct i2c_device_id *id = i2c_client_get_device_id(client);
const struct regmap_config *rmap_config;
struct max77620_chip *chip;
+ struct regmap_irq_chip *chip_desc;
const struct mfd_cell *mfd_cells;
int n_mfd_cells;
bool pm_off;
@@ -508,6 +509,14 @@ static int max77620_probe(struct i2c_client *client)
return -ENOMEM;
i2c_set_clientdata(client, chip);
+
+ chip_desc = devm_kmemdup(&client->dev, &max77620_top_irq_chip,
+ sizeof(max77620_top_irq_chip),
+ GFP_KERNEL);
+ if (!chip_desc)
+ return -ENOMEM;
+ chip_desc->irq_drv_data = chip;
+
chip->dev = &client->dev;
chip->chip_irq = client->irq;
chip->chip_id = (enum max77620_chip_id)id->driver_data;
@@ -544,11 +553,9 @@ static int max77620_probe(struct i2c_client *client)
if (ret < 0)
return ret;
- max77620_top_irq_chip.irq_drv_data = chip;
ret = devm_regmap_add_irq_chip(chip->dev, chip->rmap, client->irq,
IRQF_ONESHOT | IRQF_SHARED, 0,
- &max77620_top_irq_chip,
- &chip->top_irq_data);
+ chip_desc, &chip->top_irq_data);
if (ret < 0) {
dev_err(chip->dev, "Failed to add regmap irq: %d\n", ret);
return ret;
--
2.48.1
I marked these as fixes, but the issue is not likely to trigger in
normal conditions.
Not tested on hardware, please kindly provide tested-by, the best with
some probe bind/unbind cycle.
Best regards,
Krzysztof
---
Krzysztof Kozlowski (2):
ASoC: codecs: pm4125: Fix potential conflict when probing two devices
ASoC: codecs: pm4125: Remove irq_chip on component unbind
sound/soc/codecs/pm4125.c | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)
---
base-commit: d22122bd89bc5ce7b3e057d99679ca50a72a8245
change-id: 20251023-asoc-regmap-irq-chip-bb2053c32168
Best regards,
--
Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
The patch below does not apply to the 5.10-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.10.y
git checkout FETCH_HEAD
git cherry-pick -x 8d33a030c566e1f105cd5bf27f37940b6367f3be
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<stable(a)vger.kernel.org>' --in-reply-to '2025101316-favored-pulsate-a811@gregkh' --subject-prefix 'PATCH 5.10.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 8d33a030c566e1f105cd5bf27f37940b6367f3be Mon Sep 17 00:00:00 2001
From: Zheng Qixing <zhengqixing(a)huawei.com>
Date: Tue, 26 Aug 2025 15:42:04 +0800
Subject: [PATCH] dm: fix NULL pointer dereference in __dm_suspend()
There is a race condition between dm device suspend and table load that
can lead to null pointer dereference. The issue occurs when suspend is
invoked before table load completes:
BUG: kernel NULL pointer dereference, address: 0000000000000054
Oops: 0000 [#1] PREEMPT SMP PTI
CPU: 6 PID: 6798 Comm: dmsetup Not tainted 6.6.0-g7e52f5f0ca9b #62
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.1-2.fc37 04/01/2014
RIP: 0010:blk_mq_wait_quiesce_done+0x0/0x50
Call Trace:
<TASK>
blk_mq_quiesce_queue+0x2c/0x50
dm_stop_queue+0xd/0x20
__dm_suspend+0x130/0x330
dm_suspend+0x11a/0x180
dev_suspend+0x27e/0x560
ctl_ioctl+0x4cf/0x850
dm_ctl_ioctl+0xd/0x20
vfs_ioctl+0x1d/0x50
__se_sys_ioctl+0x9b/0xc0
__x64_sys_ioctl+0x19/0x30
x64_sys_call+0x2c4a/0x4620
do_syscall_64+0x9e/0x1b0
The issue can be triggered as below:
T1 T2
dm_suspend table_load
__dm_suspend dm_setup_md_queue
dm_mq_init_request_queue
blk_mq_init_allocated_queue
=> q->mq_ops = set->ops; (1)
dm_stop_queue / dm_wait_for_completion
=> q->tag_set NULL pointer! (2)
=> q->tag_set = set; (3)
Fix this by checking if a valid table (map) exists before performing
request-based suspend and waiting for target I/O. When map is NULL,
skip these table-dependent suspend steps.
Even when map is NULL, no I/O can reach any target because there is
no table loaded; I/O submitted in this state will fail early in the
DM layer. Skipping the table-dependent suspend logic in this case
is safe and avoids NULL pointer dereferences.
Fixes: c4576aed8d85 ("dm: fix request-based dm's use of dm_wait_for_completion")
Cc: stable(a)vger.kernel.org
Signed-off-by: Zheng Qixing <zhengqixing(a)huawei.com>
Signed-off-by: Mikulas Patocka <mpatocka(a)redhat.com>
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index 7222f20c1a83..66dd5f6ce778 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -2908,7 +2908,7 @@ static int __dm_suspend(struct mapped_device *md, struct dm_table *map,
{
bool do_lockfs = suspend_flags & DM_SUSPEND_LOCKFS_FLAG;
bool noflush = suspend_flags & DM_SUSPEND_NOFLUSH_FLAG;
- int r;
+ int r = 0;
lockdep_assert_held(&md->suspend_lock);
@@ -2960,7 +2960,7 @@ static int __dm_suspend(struct mapped_device *md, struct dm_table *map,
* Stop md->queue before flushing md->wq in case request-based
* dm defers requests to md->wq from md->queue.
*/
- if (dm_request_based(md)) {
+ if (map && dm_request_based(md)) {
dm_stop_queue(md->queue);
set_bit(DMF_QUEUE_STOPPED, &md->flags);
}
@@ -2972,7 +2972,8 @@ static int __dm_suspend(struct mapped_device *md, struct dm_table *map,
* We call dm_wait_for_completion to wait for all existing requests
* to finish.
*/
- r = dm_wait_for_completion(md, task_state);
+ if (map)
+ r = dm_wait_for_completion(md, task_state);
if (!r)
set_bit(dmf_suspended_flag, &md->flags);
From: Niko Mauno <niko.mauno(a)vaisala.com>
This reverts commit b7e5c59f3b0971f56ebbceb9d42cc45e9ac1cd94.
Commit in question broke building perf followingly with v5.15.195:
| ld: perf-in.o: in function `test__PERF_RECORD':
| tools/perf/tests/perf-record.c:142: undefined reference to `evlist__cancel_workload'
The 'evlist__cancel_workload' seems to be introduced in
commit e880a70f8046 ("perf stat: Close cork_fd when create_perf_stat_counter() failed")
which is currently not included in the 5.15 stable series.
Fixes: b7e5c59f3b09 ("perf test: Don't leak workload gopipe in PERF_RECORD_*")
Cc: stable(a)vger.kernel.org # 5.15
Signed-off-by: Niko Mauno <niko.mauno(a)vaisala.com>
---
tools/perf/tests/perf-record.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/tools/perf/tests/perf-record.c b/tools/perf/tests/perf-record.c
index b215e89b65f7..0df471bf1590 100644
--- a/tools/perf/tests/perf-record.c
+++ b/tools/perf/tests/perf-record.c
@@ -115,7 +115,6 @@ int test__PERF_RECORD(struct test *test __maybe_unused, int subtest __maybe_unus
if (err < 0) {
pr_debug("sched__get_first_possible_cpu: %s\n",
str_error_r(errno, sbuf, sizeof(sbuf)));
- evlist__cancel_workload(evlist);
goto out_delete_evlist;
}
@@ -127,7 +126,6 @@ int test__PERF_RECORD(struct test *test __maybe_unused, int subtest __maybe_unus
if (sched_setaffinity(evlist->workload.pid, cpu_mask_size, &cpu_mask) < 0) {
pr_debug("sched_setaffinity: %s\n",
str_error_r(errno, sbuf, sizeof(sbuf)));
- evlist__cancel_workload(evlist);
goto out_delete_evlist;
}
@@ -139,7 +137,6 @@ int test__PERF_RECORD(struct test *test __maybe_unused, int subtest __maybe_unus
if (err < 0) {
pr_debug("perf_evlist__open: %s\n",
str_error_r(errno, sbuf, sizeof(sbuf)));
- evlist__cancel_workload(evlist);
goto out_delete_evlist;
}
@@ -152,7 +149,6 @@ int test__PERF_RECORD(struct test *test __maybe_unused, int subtest __maybe_unus
if (err < 0) {
pr_debug("evlist__mmap: %s\n",
str_error_r(errno, sbuf, sizeof(sbuf)));
- evlist__cancel_workload(evlist);
goto out_delete_evlist;
}
--
2.39.5