On 07/27/2015 10:29 PM, Andy Lutomirski wrote:
> modify_ldt has questionable locking and does not synchronize
> threads. Improve it: redesign the locking and synchronize all
> threads' LDTs using an IPI on all modifications.
>
> This will dramatically slow down modify_ldt in multithreaded
> progr
On 07/30/2015 03:25 PM, Andy Lutomirski wrote:
On Thu, Jul 30, 2015 at 11:35 AM, Boris Ostrovsky
wrote:
[OK]LDT entry 0 has AR 0x0040F200 and limit 0x
[OK]LDT entry 0 is invalid
[RUN] Cross-CPU LDT invalidation
Segmentation fault (core dumped)
That's not good.
Can you backtr
On Thu, Jul 30, 2015 at 11:35 AM, Boris Ostrovsky
wrote:
> On 07/30/2015 02:14 PM, Andy Lutomirski wrote:
>>
>> On Thu, Jul 30, 2015 at 10:56 AM, Boris Ostrovsky
>> wrote:
>>>
>>> On 07/28/2015 01:29 AM, Andy Lutomirski wrote:
>>>
+
+static inline void load_mm_ldt(struct mm_struct *mm)
On 07/30/2015 02:14 PM, Andy Lutomirski wrote:
On Thu, Jul 30, 2015 at 10:56 AM, Boris Ostrovsky
wrote:
On 07/28/2015 01:29 AM, Andy Lutomirski wrote:
+
+static inline void load_mm_ldt(struct mm_struct *mm)
+{
+ struct ldt_struct *ldt;
+ DEBUG_LOCKS_WARN_ON(!irqs_disabled());
I
On Thu, Jul 30, 2015 at 10:56 AM, Boris Ostrovsky
wrote:
> On 07/28/2015 01:29 AM, Andy Lutomirski wrote:
>
>> +
>> +static inline void load_mm_ldt(struct mm_struct *mm)
>> +{
>> + struct ldt_struct *ldt;
>> + DEBUG_LOCKS_WARN_ON(!irqs_disabled());
>
>
>
> I thought this was supposed t
On 07/28/2015 01:29 AM, Andy Lutomirski wrote:
+
+static inline void load_mm_ldt(struct mm_struct *mm)
+{
+ struct ldt_struct *ldt;
+ DEBUG_LOCKS_WARN_ON(!irqs_disabled());
I thought this was supposed to be checking preemptible()?
-boris
_
On Mon, Jul 27, 2015 at 10:29:39PM -0700, Andy Lutomirski wrote:
> modify_ldt has questionable locking and does not synchronize
> threads. Improve it: redesign the locking and synchronize all
> threads' LDTs using an IPI on all modifications.
>
> This will dramatically slow down modify_ldt in mul
modify_ldt has questionable locking and does not synchronize
threads. Improve it: redesign the locking and synchronize all
threads' LDTs using an IPI on all modifications.
This will dramatically slow down modify_ldt in multithreaded
programs, but there shouldn't be any multithreaded programs that